浏览器大全:是一个提供流行浏览器教程、在线学习分享的学习平台!

Questioning C# (3)

Q:今天我的侄子问我1+1等于多少,我说当然是2咯,他很狡猾的笑着说我错了,然后我问他为什么错,他瞄了我一眼说:“根本无法确定一个唯一的答案,在数学上你可以很确定的说是2,不过我并没有限定范围哟!”那一瞬间我想个傻子被他嘲弄了一番。

A:哈哈。看来你的侄子的确聪明过人。没错,没有限定范围,我们当然无法给出一个确定的答案,这也跟我们今天的话题——类型和类型系统有关。

Q:不会吧?跟我们的C#话题有关??怎么个有关法?

A:嗯,这样吧,我问你,要使得1+1的结果有效,我们至少要为这两个“1”限定一些什么条件?

Q:他们应该具有可加性。

A:在具体一点!

Q:嗯,他们应该是同一类别的。

A:对!非常对!就是同一类别,我们总不能要求一个苹果加上一台风扇会有满意的唯一的结果吧!同样的道理,我们要使得相关的式子在电脑上有效,至少我们要限定每一个被操作的因子都是可以归为某一个类别的。这就导出了类型(Type)。

Q:那么,这个跟C#的类型有什么联系呢?

A:这样吧,我们不说1+1了,我们说说你老婆每个月的家庭财政管理工作。我敢肯定,你老婆不会愚蠢到把数字跟物品混在一起计算收支的情况,她肯定会把相关的物品先进性换算,而实际上,我们每个人在处理财务工作的时候,都统一使用以货币为单位的数字,对吗?假如你这个月收入10000元,支出5000元,那么你可以很快地得出结论,你们这个月有5000元可以存入银行。但这等事怎么在电脑里,我的意思是在C#里面表达呢?电脑没有我们那么聪明,知道10000-5000=5000,因为它不能够从这个简单的式子里面知道这些数字是什么类型的。于是,我们就要首先告诉他这些数字的类型!

Q:那么,我们怎么告诉C#这些额外的信息呢?

A:这个很简单,我们计算的时候有小数的吧,在电脑里面叫做浮点数,我们只要告诉电脑,这些是浮点数,再告诉他这条式子,它就会给出结果我们的了。别的不说,我们先来看看代码:
double inComing = 10000.00;
double outGoing = 5000.00;
double result = inComing - outGoing;
然后你得到的result就是算出的结果:5000了。

Q:这些inComing、outGoing、result等,是什么来的?double又是什么来的?

A:首先,double是指双精度浮点数,你目前知道它是一种精度高的浮点数就行了,与它对应的是精度低的单精度浮点数float。而inComing、outGoing、result这三个东西是变量(Variable)。变量是用来储存信息的,以便我们后面的操作使用的。上面的代码就等于先告诉电脑:我这个月的收入是10000元,支出是5000元,我现在要你给我计算出我这个月剩下多少钱。

Q:噢,我明白了。那么,上面的代码可以运行吗?

A:还不行,因为这个仅仅是一个代码片断,不过要运行的话,我们只需要把这个片断跟之前的HelloWorld结合一下就行了,结合后的代码是:

class PrintResult
{
static void Main()
{
double inComing = 10000.00;
double outGoing = 5000.00;
double result = inComing - outGoing;

System.Console.WriteLine(result);
}
}

还记得System.Console.WriteLine(...);这句话吗,它的作用就是用来向命令行界面输出东西的,这次我们不输出Hello, World! 而改为输出result。现在,你把这个代码保存为PrintResult.cs,然后去到命令行提示符,转到PrintResult.cs所在目录键入csc PrintResult.cs进行编译,最后键入PrintResult运行一下!

Q:好,我明白了,不过我有一个问题想问问,为什么HelloWorld程序和我老婆的财务工作加起来?他们同一类型的吗?:)

A:-_- ...



相关软件

2345加速浏览器官方版

2345加速浏览器官方版 | 56.2MB

2345加速浏览器官方版

新一代2345加速浏览器采用Chromium和IE双内核,主打极速与安全特性。基于Chromium深度定制,引入网页智能预加载技术,访问网页更快速..

QQ浏览器官方正式版

QQ浏览器官方正式版 | 49.67MB

QQ浏览器官方正式版

QQ浏览器秉承TT浏览器1-4系列方便易用的特点,但技术架构不同,交互和视觉表现也重新设计,采用Chromium内核+IE双内核,让浏览快速稳定...

百度浏览器最新版下载

百度浏览器最新版下载 | 13.3MB

百度浏览器最新版下载

q百度浏览器,是一款简洁轻快、智能懂你的浏览器。依靠百度强大的搜索平台,在满足用户浏览网页的基础上,它整合百度体系业务优势,带给用户更方便的浏览方式功能...

UC浏览器官方正式版

UC浏览器官方正式版 | 44.2MB

UC浏览器官方正式版

UC浏览器(UC Browser)是UC Mobile Limited在2004年8月开发的一款软件,分uc手机浏览器和uc浏览器电脑版。UC浏览器是全球使用量最大的第三方手机浏览器...

猎豹浏览器2022最新版下载

猎豹浏览器2022下载 | 45MB

猎豹浏览器2022最新版下载

猎豹安全浏览器对Chrome的Webkit内核进行了超过100项的技术优化,访问网页速度更快。其具有首创的智能切换引擎,动态选择内核匹配不同网页...

360安全浏览器官方版下载

360安全浏览器下载 | 21.4MB

360安全浏览器官方版下载

360安全浏览器拥有全国最大的恶意网址库,采用恶意网址拦截技术,可自动拦截挂马、欺诈、网银仿冒等恶意网址。独创沙箱技术,在隔离模式即使访问****也不会感染...