第六节 类型转化
1.同种数据类型之间是可以直接进行赋值操作。例如:int a = 1;int b = a; float x = 3.4;float y = x;这个很好理解的。那么数据类型不同的空间之间如何转化呢?
2.数据类型不同的空间之间的转化,同种大数据类型之间才能发生转换。基本类型----基本类型之间 可以直接转换(自动 强制)。引用类型----引用类型之间,可以直接转换(自动 强制--上转型 下转型)。基本类型----引用类型之间,不可以直接转换(间接--包装类/封装类)
3.保证大数据类型一致的前提下,基本类型---基本类型
重点:大空间变量可以直接存储小空间的数据,但是小空间变量不可以直接存储大空间的数据(需要强制类型转换)。举例说明一下:byte a = 1; int b = a;//自动直接转化就可以int a = 1; byte b = (byte)a;//需要强制类型转换float x = 3.4F; double y = x;//自动直接转化double x = 3.4; float y = (float)x;//强制转换。这块只要理解了,还是不难的。那么整型---浮点型之间如何转化呢?从精确程度上比较,浮点型精确程度更高,可以直接存放整数。反之需要强制转换。记住:任何一个浮点型都可以直接存放一个整型!!!举例说明:int a = 1; float b = a;//自动直接转化,但是float a =1.0F; int b = (int)a;//强制类型转换。还有就是整型---字符型之间如何转化呢?每一个字符都对应这一个Unicode码a--97,举例说明:char x = 'a'; int y = x;//自动转化y--97int x = 97; char y = (char)x;//强制的转化,最后一个,布尔类型,很特殊,不能与其他基本类型之间发生转化,这节课的内容稍微有点绕,但是理解这个思路就会好很多,大家加油鸭!一起努力学习!
第七节 运算符号1
x++;//x=x+1;//将x变量空间的内容先取出 常量区取出1进行计算 再次存回x空间。x在想要做值交换的时候,会产生一个临时的副本空间(备份)。重点记忆:++在变量的前面,先自增后备份。++在变量的后面,先备份后自增,会将副本空间内的值赋给别人。做个练习题吧!
int a = 1;
for(int i=1;i<=100;i++){//循环结构
a = a++;
}
a==? 1
-------------------------------------------
int m = 1;//210
int n = 2;//321
int sum = m++ + ++n - n-- - --m + n-- - --m;
1 + 3 - 3 - 1 + 2 - 0
m==? n==? sum==?
2)赋值运算,=是赋值符号,将=右边的内容(值)存入=左边的变量空间内。有如下:+=、-=、*=、/=、%=。举例说明:int x = 1;x+=10;//x=x+10;x++;//x自增了一个,需求是让x增加10个,for循环结构
x++;//x=x+10;
x++ for(int i=1;i<=10;i++){
x++ x++;
x++ }
今日内容整理完毕!鞠躬~