您的位置:首页 > 编程语言 > Java开发

Java复习笔记1【Java的基本运算】

2015-04-18 16:35 309 查看
/**
* 了解java中基本的运算
* */
public class Base {
public static void main(String[] args){
//赋值和存储
int a = 3;
int b;
b = a;
System.out.println("a为"+a+",b为"+b);
//四则运算必须存储结果
//Java按照运算符两边操作元的最高精度保留结果的精度
int c = a / b;
System.out.println("c为"+c);
int d = a % b;
System.out.println("d为"+d);
//自增和自减
//区分:++a/--a和a++/a--
//++a/--a属于前置运算,是先自增或自减运算,再使用操作数变量值
//a++/a--属于后置运算,是先使用操作数变量值,再进行自增或自减运算
int x = 11;
int y = 11;
System.out.println("x++="+(x++));
System.out.println("++y="+(++y));
}
}


/**
* 了解位运算和逻辑运算
* */

//位运算的符号:  &(位与运算)     |(位或运算)    ~ (位非运算)   ^(位异或运算)
//逻辑运算的符号:&&(短路与)   ||(短路或)      !(逻辑非)

public class Compare {
public static void main(String[] args){
System.out.println(5 > 3);//true
System.out.println(5 == 6);//false
byte a = 127;
byte b = 2;
//byte c1 = a + b; //error,不能转换成byte型
byte c1 = (byte)(a + b);
//如果使用+、-、×、/、%运算符对两个整型数据进行计算,默认转化为int
System.out.println(c1);//输出结果为-127,byte类型的范围为-128~127
//位运算,按二进制的位进行运算
//对数值的运算
int x = 3;// x  =  0011
int y = 5;// y  =  0101
//x&y =  0001 = 1 //与运算
//x/y =  0111 = 7 //或运算
//x^y =  0110 = 6 //异或运算:相同为0,不同为1
//~x  =  1100 = -4 //非运算:按位取反
System.out.println(x & y);//输出为1
System.out.println(x | y);//输出为7
System.out.println(x ^ y);//输出为6
System.out.println(~x);//输出为-4
//对boolean值的运算
//位运算的与运算/或运算和逻辑运算的与运算/或运算对boolean的判断方式一样
System.out.println("-----------位运算----------");
System.out.println("true & true = "+(true & true));//输出结果为true
System.out.println("true & false = "+(true & false));//输出结果为false
System.out.println("false & true = "+(false & true));//输出结果为false
System.out.println("false & false = "+(false & false));//输出结果为false
System.out.println("true ^ false = "+(true ^ false));//输出结果为true
System.out.println("false ^ false = "+(false ^ false));//输出结果为false
System.out.println("true ^ true = "+(true ^ true));//输出结果为false
System.out.println("-----------逻辑运算----------");
System.out.println("true && true = "+(true & true));//输出结果为true
System.out.println("true && false = "+(true & false));//输出结果为false
System.out.println("false && true = "+(false & true));//输出结果为false
System.out.println("false && false = "+(false & false));//输出结果为false
System.out.println("!false = "+(!false));//输出结果为true
System.out.println("!true = "+(!true));//输出结果为false
}
}


/**
* 比较位运算符和逻辑运算符,了解两者的区别
* */
public class Compare2 {
public static void main(String[] args){
//区别一:
//逻辑运算符只能对boolean类型进行逻辑运算
//位运算既能对boolean类型进行逻辑运算,也能对数值类型进行逻辑运算
//System.out.println(3 && 5);//报错,无法运行
System.out.println(true && false);//输出false
System.out.println(3 & 5);//输出1
System.out.println(true & false);//输出false
//区别二:
//逻辑运算符有短路的情况,位运算符没有短路的情况
//[短路]就是如果一个表达式组合,前面的表达式能够确定最后的结果时,后面的表达式将被忽略,跳过不执行
//逻辑运算
int a = 10;
int b = 10;
if((a = 0) == 0 ||(b = 0) == 0){
System.out.println("a = " + a);
System.out.println("b = " + b);
}
//位运算
int x = 10;
int y = 10;
if((x = 0) == 0 |(y = 0) == 0){
System.out.println("x = " + x);
System.out.println("y = " + y);
}
}
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: