整数 byte 1字节 -2^7~2^7-1 -128~127 short 2字节 -2^15~2^15-1 # int 4字节 -2^31~2^31-1 long 8字节 -2^63~2^63-1 浮点数 float 4字节 单精度 # double 8字节 双精度 字符 char[] 2字节 0~65535 布尔 boolean 1字节 true真/对 false假/错
小转大 直接转 – 隐式转换 大转小 强制转 – 显式转换 如果大类型存储的值超出小类型的范围,数据会出错 浮变整 小数没–是以舍弃小数部分得到的 注意: 1.布尔类型不参与类型转换 2.类型能否转换取决于取值范围,字节大小只能做参考 3.大类型转小类型时,需要强制类型转换,如果值超出了小类型的取值范围,数据会发生错误 4.浮点型数据转为整形,会舍弃小数部分
String
四则运算: + - * / 取余: % 自增自减: ++ -- 符号在前 先自增/减再运算 符号在后 先运算再自增/减 比较运算符: >, <, ==, >=, <=, != java中"="为赋值,"=="为相等 逻辑运算符 & 与 全真才真,有假则假 &&短路与 | 或 全假才假,有真则真 ||短路或 三目运算符: 1 ? 2 : 3 1是表达式 1真取2 1假取3
/**单分支*/ if(条件1){ 结果1 } /**多分支*/ if(条件1){ 结果1 }else { 结果2 } /**嵌套分支*/ if(条件1){ 结果1 }else if(条件2){ 结果2 }else { 结果3 }
String s = "条件"; switch(s) { case "条件1": System.out.println("条件1");break; case "条件2": System.out.println("条件2");break; case "条件3": System.out.println("条件3");break; default : System.out.println("条件"); }
1.变量s支持的类型:byte short char int String
2.执行顺序:
会拿着变量s的值依次与每个case后的值做比较,如果不加break会向后穿透所有case,包括default
3.如果设置了“保底选项default”,并且没有任何case被匹配到的话会执行保底选项的内容
4.break与default是可选的,根据自己的业务来决定加不加
单循环,嵌套循环
while(判断条件){ 循环体}
do{ 循环体 }while( 判断条件 );
至少执行一次
位置:类里方法外
作用范围:在整个类中都生效,类消失,变量才会消失
注意:成员变量不是必须手动初始化,会赋予对应类型的默认值
位置:方法里/局部代码块里
作用范围:当方法/局部代码块结束,变量也随之释放
注意:使用时必须手动初始化
//方式一: 声明,分配空间并赋值 int[] arr1 = {1,2,3}; //方式二: 显示初始化并赋值 int[] arr2; arr2 = new int[]{1,2,3}; //方式三: 声明长度,不赋值 int[] arr3 arr3 = new int[3];
for(int i=0; i<a.length; i++){ System.out.println(i);//下标 System.out.println(a[i]);//遍历数组的每一个元素 }