首页 | 手机版 | 三国演义 | 三国志 | 史将 | 背景 | 藏书阁
首页 -> 精彩文章 -> 国培JAVA编程笔记第二章4

国培JAVA编程笔记第二章4

作者wangger 标签java 阅读次数:0

一、比较运算符
    >、<、>=、<=、==、!=
    相等是用“==”,一个“=”是赋值运算符。
二、布尔类型
    boolean
    例:boolean b;
    这种类型只有两个值:true(真)、false(假)。
    5 > 3 true
    3 > 4 false
三、逻辑运算符
    1、&&(与)、||(或)、!(非)
    &&:两个操作同时为真时,此表达式为真,否则为假。
    ||:只要有一个操作数为真,此表达式为真。
    !:操作数为真,表达式为假。操作数为假,表达式为真。
                   a&&b         a||b              !a
a=true, b=true    true  true  false
a=true, b=false    false  true  false
a=false,b=true    false  true   true
a=false,b=false    false  false   true
    例:3<X<5     x>3 && x<5
 x>3或者x<-1    x>3 || x<-1
class Test{
    public static void main(String[] a){
 int x = 3;
 int y = 5;
        boolean b;
        //b = x > y && x++;//错误,不能用数字来表示真或假
 b = x > y &&( x++ < y);
    }
}   
    2、短路效应
       在一个逻辑表达式中,如果在执行过程中就能够得到整个表达式的结果,那么后面的表达式将不再执行。
class Test{
    public static void main(String[] a){
 int x = 3;
 int y = 5;
        boolean b;
        b = x > y && ( x++ < y);
 System.out.println("x = " + x);//x=3
    }
}
class Test{
    public static void main(String[] a){
 int x = 3;
 int y = 5;
        boolean b;
        b = x < y && ( x++ < y);
 System.out.println("x = " + x);//x=4
    }
}
四、类型转换
    类型转换有两种,一种是隐式转换(自动转换);另外一种是显式转换(强制转换)。
    1、隐式转换
    总原则:将取值范围小的类型自动转换成取值范围大的类型。
    取值范围:double>float>long>int>byte、char
    double d = 5;
class Test{
    public static void main(String[] a){
 double x = 3;
 int y = 5;
        int z = x + y;//错误,因为x+y最后类型是double.
    }
}
     1)当表达式中只含有short、byte、char类型,整个表达式的值的类型将转换为int。
class Test{
    public static void main(String[] a){
 byte x = 3;
 x = x * x;//错误。x*x最后类型是int。
    }
}
 2)当表达式中含有double、float、long、int类型中的一种,那么整个表达式的值的类型将转换成表达式中取值范围最大的类型。
class Test{
    public static void main(String[] a){
 byte x = 3;
 float y = 5.4f;
 double z = x * y;
    }
}
    2、显式转换
    当需要将取值范围大的类型转换成取值范围小的类型,需要进行显式转换。
    语法:
       (最终转换的类型)需要转换类型的变量
class Test{
    public static void main(String[] a){
 int x;
 float y = 5.6f;
 x = (int)y;
 System.out.println("x = " + x + " y = " + y);
    }
}
    强制类型转换会损失精度,一般不要进行此操作。
五、结合性和优先级
    结合性一般是从左向右结合。
    运算符的优先级:目数越少,优先级越大。括号的优先级最高。
class Test{
    public static void main(String[] a){
 int x = 3;
 int y = 5;
 System.out.println("x + y = " + x + y);//35.结合性
    }
}
    一个表达式先考虑优先级,如果优先级相同,再考虑结合性。
六、表达式和语句
    使用运算符连接后的式子,称为表达式。
    表达式后加上分号称为语句。

 

 

 

 

 

 

 



浙ICP备06020153号-1