1.数据类型
数据类型分为基本数据类型和引用数据类型
整数型
byte 1字节 -128-127
short 2字节
int 4字节
long 8个字节
浮点数
float 4字节
double 8个字节
字符型
char 2个字节
布尔型
boolean 1字节
10.1声明long型常量须后加‘l’或‘L’
10.2声明float型常量,必须后加‘f’或‘F’
2.类型转化
1.自动类型转化
当容量小的数据类型的变量与容量大的数据类型的变量做运算时,结果自动提升为容量大的数据类型
byte、char、short—>int—>long—>float—>double
这里的容量大小指的是,表示数的范围的大和小。
当byte、char、short三种类型的变量做运算时,结果最小用int接收。
2.强制类型转化
自动类型转换的逆过程,将容量大的数据类型转换为容量小的数据类型。
用时要加上强制转换符:(),但可能造成精度降低或溢出,格外要注意。
3.String字符串
1.String不是基本数据类型,属于引用数据类型
2.凡是用双引号包起来的都是字符串
3.使用方式与基本数据类型一致。例如String str = "你好";
4.字符串可以与任意数据类型做运算,但只能做连接运算,运算符是+
口诀:任你千变万化,一遇字符串都变字符串。
例子:int i=10; String str = "abc";System.out.println(i+str);
运行结果:10abc
4.++在前和++在后
++在前是先自增1然后在赋值,或者参与运算
++在后是先赋值或者参与运算然后在进行自增1
5.==和=的区别
这是两个不同的东西!!!!
==是比较运算符,用来比较等号两边的值是否相等。
=是赋值运算符,它是用来把等号右边的值赋给等号左边。
6.&和&&的区别
相同点1:& 与 && 的运算结果相同
相同点2:当符号左边为true时,二者都会执行符号右边的运算。
不同点:当符号左边是false时,&继续执行符号右边的运算,而&&不再执行符号右边的运算。
7.|和||的区别
相同点1:| 与 || 的运算结果相同
相同点2:当符号左边是false时,二者都会执行符号右边的运算
不同点3:当符号左边是true时,|继续执行符号右边的运算,而||不再执行符号右边的运算
8.Switch
Switch结构中的表达式,只能是以下6中数据类型之一:
byte、short、char、int、枚举类型(JDK5.0新增)、String类型(JDK7.0新增)。
Switch case的case之后只能声明常量。不能声明范围。
break关键字是可选的。
default:相当于if-else结构中的else.
default结构是可选的,而且位置是灵活的
凡是可以使用switch-case的结构,都可以转换为if-else。反之,不成立。
我们写分支结构时,当发现既可以使用switch-case,(同时,switch中表达式的取值情况不太多),又可以使用if-else时,我们优先选择使用switch-case。原因:switch-case执行效率稍高。
9.break continue return
break的作用是跳出当前循环块(for、while、do while)或程序块(switch)。在循环块中的作用是跳出当前正在循环的循环体。在switch程序块中的作用是中断和下一个case条件的比较。 break 默认只能结束当前最近的循环体。 break 还有一个break标签 我们可以从内层跳到外层,结束外层循环
continue 语句 结束当前循环, continue用于结束循环体中其后语句的执行,并跳回循环程序块的开头执行下一次循环,而不是立刻结束循环体。
return语句的话,比较狠,直接结束方法里内容的执行