- 类型转换
隐式类型转换:不用编辑计算机自己进行转换;
(1)不丢失精度的转换:Long类型的数据比int类型的覆盖面广,转换过程中不丢失精度;
(2)子类向父类的转换:
当运用实例变量访问实例成员时,该变量只能访问自己的变量成员;
类之间实现继承,调用
Teacher t=new teacher();
t.可以看到eat与think方法
如若进行赋值
Student S=t 则S.只能看到eat方法
Class student{} { public void eat () { console.writeline(“I am a student ”) } }
Class teacher():student { public void think () { console.writeline(“I am a teacher ”) } }
(3)装箱;int x=100,object obj = x;
显示类型的转换
(1) 显示类型转换有可能导致丢失精度,即cast 使用类型转换符进行强制转换 (ushort)x
(2) 拆箱;y=int().obj
(3) 使用convert类,convert 数值类型向字符串类型转换 object数据类型自带的四个方法.equal,.tostring Parse 方法只能够解析数据类型正确的;tryparse方法
- 一元操作符
整除的特点:整除的结果为整数;整除的除数不能为0;
浮点类型:除数可以为0,结果为正无穷大与负无穷大
类型提升:发现计算的结果与转换的类型不符合时,进行类型提升;
加法操作符与减法操作符
关系操作符 ==等于 !=不等于
Is 用来判定是否为某种对象的值或者类型;
可空类型Nullable
Nullable <int > x=null;
或者表示为 int ? x=null; 可以将不允许为空的值设置为空;输入时必须为括号括起来,并且
判断值进行代替 int y=x?? 1 判断x是否为空,若为空则用1来代替;
判断 可以利用条件操作符 int x=80; string y =string.empty ;
Str=(x>=60)?”pass”:”failed” 判定x是否为大于60,若成立则为pass,不同意则为failed,中间的输出项之间的标点符号必须为冒号(:)
赋值操作符计算顺序式从右到左
+=1: x=x+1;
x<<1= x*2: x<<2= x*4: x<<3= x*8: x<<4= x*16 左移就是x乘上2的幂次数