Java小细节(一)

习惯:

  1. 写注释

常量与变量

  1. 单引号:‘一个数字、字母或符号’;双引号:“一个或多个字符”
  2. 0开头表示8进制;0x开头表示16进制;二进制数分三组为8进制(每组最大为7)、分两组为16进制(最大为F)
  3. long型赋值末尾需要加l(整型默认为int);float型赋值末尾需要加f(精度类型默认为double)
  4. 负数是取正后取反码再加1;负数的二进制的最高位是1

逻辑运算符

  1. byte b=4;byte b1=3;byte b2=7;b=b1+b2;//右边变量不确定,复制可能丢失精度,报错
  2. int x;int x1=Integer.MAX_VALUE;x2=2;x=x1+x2;//默认类型(int),超出范围舍弃高位
  3. ^:异或运算符:相同为false,不同为true;进行位运算时,一个数异或两次还是这个数(可用于两变量值的交换,面试3)
  4. &和&&:结果相同,&&:左边为假,右边不运算,&:可参与位运算(二进制位比较);|和||:结果相同,||:左边为真,右边不运算,|:可参与位运算(特点:可将有效位保留)
  5. ~6,反码:取反:0110 --》1001,-7
  6. 任何数据+字符串=字符串
    例:
Systeam.out.println("5+5="+5+5); 	//5+5=55
Systeam.out.println("5+5="+(5+5)); 	//5+5=10
  1. int i=3;i=i++; //i=3
short s=3;
 s+=4;	//s=7类型自动转换
 s=s+4;	//报错可能丢失精度s=(short)(s+4)
  1. 位运算:"<<"(二进制数左移,超出的舍弃,右边补0)3<<n=3*2(n));3<<2=12;
    “>>”(二进制数右移,超出的舍弃,若是负数则用1补,是正数则用0补)3>>n=3/2(n);">>>"高位用0补。
    用处:2乘8可用8<<1(用于2的倍数运算,运算更高效)

语句

switch(x){//byte,short,int,char
	case 1:
		a=1;
		break;
	case 2:
		a=2;
		break;
	case 3:
	case 4:
		System.out.println("两个一起");
	default:
		a=3;
		break;
}//运行到break;或大括号
  1. 循环结构: while,do while,for
  2. for(初始化表达式;循环条件表达式;循环后的操作表达式){
    执行语句;(循环体)
    }
for(int a=0,b=0;a<3&&b<=4;a++,b++){
	System.out.println("a和b一起控制循环");
}
  1. for和while的特点:
    1,for和while可以互换。
    2,小区别:for循环内部定义的循环增量"i"只能在for循环内使用。
  2. 无限循环最简单的形式
while(true){}
for(;;){}

\n:回车
\t:制表符
\b:退格
\r:按下回车键
\:转义字符
windows系统中回车符其实是有两个符号组成的\r\n
linux中回车符是\n

  1. break:作用于switch或循环语句,跳出所在的当前循环。
a:for(int x=0;x<3;x++){
	b:for(int y=0;y<4;y++){
		System.out.println("跳出外循环");
		break a;
	}
	//break b;//无效语句,不在循环体内
}

continue:继续,作用于循环语句,结束本次循环,继续下次循环。

a:for(int x=0;x<3;x++){
	b:for(int y=0;y<4;y++){
		System.out.println("x="+x);
		continue a;//输出了x=0,1,2
	}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值