|
本帖最后由 王尼玛 于 2014-10-24 01:08 编辑
大家好,我是王尼玛。今天起我给大家讲解C#开发教程,本次是第三课。大家在课后有什么疑问可以跟帖留言,我会尽我所能来解答。毕竟众口难调,大家有什么建议也可以跟帖告诉我。
此教程为本人原创,转载请注明"吾爱汇编论坛王尼玛原创"
好了,废话不多说,开始今天的学习.
有朋友说不太明白我写的教程,其实编程这东西很简单,一个字,练!你光看我写的多半是一头雾水,因为你没实际跟着我讲的代码去操作,你要跟着我的代码敲,多敲代码,多练习我给的例子,再配合我例子后面的讲解,自然就明白我讲的是什么了.还不明白?跟帖问吧
1.自动数据类型转换
问题:
某班第一次考试平均分91.89分,第二次比第一次增加2分,第二次平均分是多少?
让我们来看这个实例,注意代码中的注释:
- double firstAvg = 91.89;//第一次平均分
- double secondAvg;//第二次平均分
- int rise = 2;//增长的分数
- secondAvg = firstAvg + rise;//自动类型转换
- Console.WriteLine("第二次平均分是:" + secondAvg);//输出第二次的平均分
- Console.ReadKey();
复制代码 程序运行的结果:
\
下面的话看似复杂,其实很好理解:
从代码中可以看出,double类型变量firstAvg和int类型变量rise相加后,计算的结果赋给一个double类型变量secondAvg,这时
就发生了自动类型转换。这个神秘的过程到底是什么呢?
规则一:
如果一个操作数为double类型,则整个表达式可提升为double类型
比如说:
int score = 80;
double newScore = score;
这里,int变量score隐式地自动转换为double类型变量.
规则二:
满足自动类型转换的条件.
两种类型要兼容,数值类型(整形和浮点型)互相兼容
目标类型大于源类型,double类型可以存放int类型数据,因为为double类型变量分配的空间宽度足够存储int型变量.
2.强制数据类型转换
事实上,自动类型转换并非所有情况下都有效.如果不满足上述条件,比如在必要时必须将double类型变量的值赋给一个int类型变量时,就需要强制
类型转换.
语法:
(数据类型)表达式
在变量前加上括号,括号中的类型就是你要强制转换成的类型.比如说:
- double d = 34.5252;//声明一个值为34.5252的双精度类型变量
- int b = (int)d;//强制将变量d转换为int类型
复制代码 我们再看一个实例:
去年Apple笔记本所占的市场份额是20,今年增长的市场份额是9.8,求今年所占的市场份额?
看看该如何解决这个问题:
- int before = 20;//去年所占市场份额
- double rise = 9.8;//增长的份额
- //计算新的市场份额(double类型变量强制转换成int类型变量)
- int now = before + (int)rise;//现在的份额
- Console.WriteLine("新的市场份额是" + now);
- Console.ReadKey();
复制代码 看看运行结果:
从实例中可以看出,由于强制类型转换往往是从宽度大的类型转换成宽度小的类型,使数值损失了精度(如2.3变成了2,34.5353变成了34)
这节课就讲到这里,有不懂的地方可以留言给我.
大家喜欢本教程的话还请多多加分,这也是我继续做下去的动力!
谢谢大家
王尼玛C#初级开发原创教程目录:
1.C#初级开发原创教程第一课 Visual Studio 2013的安装
2.C#初级开发原创教程第二课 控制台的输出
3.C#初级开发原创教程第三课 数据类型转换
4.C#初级开发原创教程第四课 深入控制台应用程序
5.C#初级开发原创教程第五课 bool类型,关系运算符与if选择结构
6.C#初级开发原创教程第六课 复杂选择结构
7.C#初级开发原创教程第七课 循环结构(一)
8.C#初级开发原创教程第八课 循环结构(二)
9.C#初级开发原创教程第九课 数组
10.C#初级开发原创教程第十课 面向对象之类和对象
11.C#初级开发原创教程十一课 类的无参方法
12.C#初级开发原创教程十二课 带参数的方法(一)
13.C#初级开发原创教程第十三课 字符串的操作
|
评分
-
参与人数 15 | 威望 +1 |
HB +50 |
THX +5 |
收起
理由
|
29590
| |
+ 1 |
|
|
消逝的过去
| |
+ 2 |
|
|
zxjzzh
| |
+ 2 |
|
[吾爱汇编论坛52HB.COM]-学破解防破解,知进攻懂防守! |
agan8888
| |
+ 1 |
|
|
h112233h456
| |
+ 1 |
|
|
ldljlzw
| |
+ 1 |
|
|
ding520
| |
|
+ 1 |
|
playboy
| |
+ 1 |
|
|
XiaoWeiSec
| |
+ 1 |
|
|
许先生
| |
+ 5 |
+ 1 |
积极评分从我做起,感谢! |
Shark恒
| |
+ 10 |
|
你将受到所有人的崇拜! |
方白
| |
+ 5 |
|
尼玛 天书啊 |
判官
| |
+ 5 |
+ 1 |
尼玛,大神啊! |
哎呦呦
| |
+ 5 |
+ 1 |
尼玛 天书啊 |
Top丶邪少
| + 1 |
+ 10 |
+ 1 |
尼玛,大神啊! |
查看全部评分
|