容易忽略的java细节
public class Test1 {
public static void main(String[] args) {
// TODO Auto-generated method stub
int i = 10;
String str = "Hello World " + i;
// 计算j1/j2时整型变量会提前转换为浮点型数据。然后进行运算
int j1 = 2;
float j2 = 2.3f;
System.out.println("j1/j2= " + (j1 / j2));
// 关系表达式会返回一个布尔值
System.out.println("i>j " + (i > j1));
// “+”会将所有的数据类型转换为字符串
System.out.println(str);
for (int k = 0; k < 3; k++) {
if (k == 1) {
// 返回到起始位置
continue;
}
System.out.println("kc= " + k);
}
for (int k = 0; k < 3; k++) {
if (k == 1) {
// 跳出当前循环
break;
}
System.out.println("kb= " + k);
}
int mov1 = -3;
int mov2 = 2;
//带符号右移
System.out.println("mov1>>2 :" + (mov1 >> 2));
//无符号右移
System.out.println("mov1>>>2 :" + (mov1 >>> 2));
// 异或
System.out.println("mov1^mov1 :" + (mov1 ^ mov1));
// 按位与
System.out.println("mov1&mov1 :" + (mov1 & mov1));
// 按位或
System.out.println("mov1|mov2 :" + (mov1 | mov2));
// 与(&)和短路与(&&) 或(|)和短路或(||)
int test1 = 10;
int test2 = 100;
//若前一个布尔值是1,则后面不再执行判断
if (10 == 10 || ++test1 > 10) {
System.out.println("test1= " + test1);
}
//若前一个布尔值是1,则后面仍然执行判断
if (10 == 10 | ++test1 > 10) {
System.out.println("test1= " + test1);
}
//若前一个布尔值是0,则后面不执行判断
if (10 != 10 && --test2 > 100) {
}
System.out.println("test2= " + test2);
//若前一个布尔值是0,则后面仍然执行重点内容判断
if (10 != 10 & --test2 > 100) {
}
System.out.println("test2= " + test2);
}
}
转载 http://blog.csdn.net/zhanggaofeixy/article/details/51167831
🐳 作者:hiszm 📢 版权:本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,万分感谢。 💬 留言:同时 , 如果文中有什么错误,欢迎指出。以免更多的人被误导。 |
![]() |