目录
逻辑运算符:&&(短路逻辑与) ||(短路逻辑或) !(非)
注释
//单行注释
/*
快捷键:/*+enter 多行注释
*/
/**
*文档注释:多用于方法上
*/
基本数据类型
1T=1024GB
1G=1024MB
1MB= 1024kb
1kb=1024byte
1byte=8bit
类型 | 大小 | 范围 |
byte(字节整型) | 1byte (8bit) | -2^7∽2^7-1(-128∽127) |
short(短整型) | 2byte (16bit) | -2^15∽2^15-1 |
int (整型)默认 | 4byte (32bit) | -2^31∽2^31-1 (-2147483648∽2147483647) |
long(长整型) | 8byte (64bit) | -2^63∽2^63-1 |
float(单精度浮点型) | 4byte (32bit) | -3.4E38∽3.4E38 |
double(双精度浮点型)默认 | 8byte (64bit) | -1.7E308∽1.7E308 |
char (字符型) | 2byte (16bit) | 0∽65535 既可以表示整数,也可以表示字符 |
boolean (布尔型) | 1byte | true,false |
变量分类
1.局部变量:声明在方法中的变量
2.成员变量:声明在类中方法外
3.静态变量:使用static关键字修饰的变量,一般声明在类中方法外
类型转换
自动类型转换:把小范围数据类型值献给比他大的范围的类型,会发生自动类型转换
多种类型的值在一起运算,结果自动转换为范围最大的类型
强制转换类型:把大范围数据类型值献给比他小的范围的类型
格式:小范围数据类型 变量名=(小范围数据类型)大范围类型的值或变量
ps:基本数据类型范围从小到大:byte->short->int->long->float->double
除法
/*
除法: /
*/
int i = 5;
int j = 2;
double d = 2.0;
System.out.println(i/j);//保留整数部分,失去小数部分
System.out.println(i/d);//保留小数部分
System.out.println(i%j);//取余数,5/2=2...1
int m = -10;
int n = 4;
System.out.println(m%n);//取余结果符号与被除数符号保持一致
自增自减
/*
++:自增1
--:自减1
*/
int i = 5;
//后置自增自减:先赋值再自增自减
int j = 10;
int result = j++;
System.out.println(j);//11
System.out.println(result);//10
//前置自增自减:先自增自减再赋值
int m = 5;
int result2 = ++m;
System.out.println(m);//6
System.out.println(result2);//6
移位
System.out.println(21>>2);//往右移动几位,就除以多少2
System.out.println(21<<2);//往左移动几位,就乘以多少2
实质是二进制码的左右移位
逻辑运算符:&&(短路逻辑与) ||(短路逻辑或) !(非)
int i = 10;
boolean result = i>5 && i<20;//true && true
boolean result2 = i>6 && i<8;//true && false
boolean result3 = i>5 || i<6;//true || false
System.out.println(result);//true
System.out.println(result2);//false
System.out.println(result3);//true
//当做短路逻辑与运算时,当第一个表达式为false时,后面表达式不会再执行
int j = 20;
boolean r = j>30 && ++j>15;//未执行++j
System.out.println(j);//j=20
System.out.println(r);
变量a | 变量b | a&&b | a||b | !a |
false | false | false | false | true |
false | true | false | true | true |
true | true | true | true | false |
true | false | false | true | false |
与:有假即假,全真为真
或:有真即真,全假为假
与运算:指:当第一个表达式为假时后面的表达式就不会再去运算了
或运算:指:当第一表达式为真时后面的表示式不参与运算
其他
byte,short,char在运算时,自动转换成int来进行计算
//byte,short,char在运算时,自动转换成int来进行计算
short s = 100;
byte b = 50;
char c = 65;
char c2 = 'a';
int result = s+b;//int + int
int result2 = s+s;
int result3 = b+c;
int result4 = c2+b;//'a'--->ASCII--->97
short s2=100;
//s2 = s2+1;//编译错误,右边结果为int型,s2为short
s2 = (short)(s2+1);
s2 += 1;//这两个等价