一、关键字
二、标识符
标识符是程序中自定义的名称,由26个英文字母、数字、_、$构成,不可以由数字开头
(1)包名:多单词组成,都有小写
(2)类名:所有单词首字母都有大写,eg:XxxYyyZzz
(3)变量和函数名:第一个单词首字母小写,其余大写,eg:xxxYyyZzz
(4)常量名:所有都要大写,用_链接,eg:XXX_YYY_ZZZ
三、注释
四、常量&变量
(1)null是常量(引用数据类型)
(2)进制转换
十转二:除二取余;二转十:二进制的n次幂
其余进制转换:中间都要经过二进制
十——>十六:十——>二——>十六
四个二进制位是一个十六进制,3个二进制位是一个八进制
(3)变量
将不确定的data进行存储,在内存在开辟一个空间,你只要操作该空间的值。
整数默认int,小数默认double
几个需要注意的声明:float f=3.2f,要有f,不然会报错
char ch='4'、‘a’、'+'
错误例子:byte b=3; b=b+2 错在用byte直接加int(2默认为int)。只有两个数据类型提升为高的数据类型,才可运算。可进行强制转换进行运算:b=(byte)(b+2)
特殊:char ch='a'; ch=ch+1;很明显会损失精度,ch为两个八位,提升为int(97),ch+1显示98,查看98对于的Unicode编码可以这样进行强制转换:(char)(ch+1)
五、运算符
(1)%取模(余数):只看左边被除数的符号,eg: 1%-5=1 ,-1%5=-1
(2)++、--:b=a++先赋值后自增;b=++a,先自增后赋值
(3)+:字符串连接符。system.out.println("haha"+"haha");字符串与任何数据连接,最终都会变成字符串。
例如:system.out.println("5+5="5+5),输出5+5=55;system.out.println("5+5="(5+5)),输出5+5=10,这是因为,小括号提高了其优先级
(4)==:比较运算符。对比=是赋值运算符
(5)逻辑运算符:&、|、^、!、&&、||
^:亦或,与| 并不一样,T^T=F, F^F=F,T^F=T
(6)位运算符:<<、>>(最高位是啥补啥),>>>(无符号位移,最高位都拿0补)。最快的运算方式的位运算。<<:乘以2的移动位数次幂,>>:除以2的移动位数次幂。
六、流程控制语句
(1)switch
switch(表达式){
case 1:。。。;
break;
case 2:。。。;
break;
case 3:。。。;
break;
default:。。。;break;
}
其中,表达式的值有四种类型:byte,int,short,char。一旦符合条件后,便不再进行判断,如果有break就跳出循环,否则,继续向下读,直到遇到break或者碰到}来结束循环。两种结束循环方式:第一种是break,第二种是遇到}。例如:
x=3;
switch(x){
default:sys("d");
case 2:sys("a");
case 4:sys("b");
break;
case 6:sys("c");
break;
}
程序解读:先读case2\4\6,再读default,之后不再进行判断,继续顺着向下读取,case2、4,之后遇到break退出循环。
(2)switch与if选哪个?
对具体数值进行判断,数值不多,且类型满足要求,用switch;
对区间进行判断,对结果为Boolean类型进行判断(不满足四种数据类型的),使用if,if使用范围更广
(3)while
while(y<3);{.....};错误!相当于没有循环体,不停在判断是否<3,直到死机
(4)for与while区别
变量作用域不同。for的变量仅作用于for的大括号里面。
for语句判断步骤: