Java学习第四期-操作符

一、算数操作符

基本:+-*/%

自增自减 ++ --

操作运算符-Scanner

导入Scanner类,(既然是类,在main中使用时需要new对象。)使用其获得输入的整数值。

import java.util.Scanner;
public class yunsuanfu {
    public static void main(String[] args) {
        Scanner s = new Scanner(System.in);
        int a = s.nextInt();
        System.out.println("第一个整数是:"+ a);
        int b = s.nextInt();
        System.out.println("第二个整数是:"+ b);
    }
}

 

 相应的也可以读取其他的数据值:

import java.util.Scanner;
public class yunsuanfu {
    public static void main(String[] args) {
        Scanner s = new Scanner(System.in);
        System.out.println("输入整数:");
        int a = s.nextInt();
        System.out.println("第一个整数是:"+ a);
        System.out.println("输入整数:");
        int b = s.nextInt();
        System.out.println("第二个整数是:"+ b);
        System.out.println("输入浮点数:");
        float c = s.nextFloat();
        System.out.println("读取的浮点数值为"+ c);
        System.out.println("输入字符串:");
        String d = s.nextLine();
        System.out.println("读取的字符串为:" + d);
    }
}

但是,我们发现这里的字符串并没有输入就直接输出了。这是因为在先输入里整数或者浮点数之后,输出时会输出一个换行符。读取字符串时,直接读取了这个换行符,导致直接输出。

如果程序需要在整数或者浮点数之后输出字符串,就需要两个读取字符串 的 语句。

 

System.out.println("输入字符串:");
        String d = s.nextLine();
        String e = s.nextLine();
        System.out.println("读取的字符串为:" + e);

 三、关系操作符

> 大于
>= 大于或等于
< 小于
<= 小于或等于
== 是否相等
!= 是否不等

import java.util.Scanner;
public class yunsuanfu {
    public static void main(String[] args) {

            Scanner scanner = new Scanner(System.in);
            int number = scanner.nextInt();
            System.out.println("第一个整数:" + number);
            int number2 = scanner.nextInt();
            System.out.println("第二个整数:" + number2);
            System.out.println("比较" + number + ">" + number2 + ":" + (number > number2));
            System.out.println("比较" + number + ">=" + number2 + ":" + (number >= number2));
            System.out.println("比较" + number + "<" + number2 + ":" + (number < number2));
            System.out.println("比较" + number + "<=" + number2 + ":" + (number <= number2));
            System.out.println("比较" + number + "==" + number2 + ":" + (number == number2));
            System.out.println("比较" + number + "!=" + number2 + ":" + (number != number2));

        }
}

比较下输出的是true或者false

四、逻辑运算符

内容

 1、长路与 和 短路与

无论长路与  & 还是短路与 &&

两边的运算单元都是布尔值
都为真时,才为真
任意为假,就为假

区别
长路与 两侧,都会被运算
短路与 只要第一个是false,第二个就不进行运算了
短路与的比长路的少计算一边。

public class yunsuanfu {
    public static void main(String[] args) {

        //长路与  无论第一个表达式的值是true或者false,第二个的值,都会被运算
        int i = 2;
        System.out.println( i== 1 & i++ ==2  ); //无论如何i++都会被执行,所以i的值变成了3
        System.out.println(i);

        //短路与 只要第一个表达式的值是false的,第二个表达式的值,就不需要进行运算了
        int j = 2;
        System.out.println( j== 1 && j++ ==2  );  //因为j==1返回false,所以右边的j++就没有执行了,所以j的值,还是2
        System.out.println(j);
    }
}

 2、长路或 和 短路或

无论长路或  还是短路或 ||

两边的运算单元都是布尔值
都为假时,才为假
任意为真,就为真
区别
长路或 两侧都会被运算
短路或 只要第一个是true的,第二个就不进行运算了

 

 3、取反!

取反!
真变为假
假变为真

public class yunsuanfu {
    public static void main(String[] args) {
        boolean b = true;

        System.out.println(b); //输出true
        System.out.println(!b);//输出false
    }
}

 4、异或^

不同,返回真
相同,返回假

练习:注意这里的i++ ,是先调用i,判断后再 ++

public class Demo15 {
    public static void main(String[] args) {
        int i=1;
        boolean b=!(i++==3)^(i++==2)&&(i++==3);
        //结果是flase&&ture
        //!(i++==3)^(i++==2)
        //!(2==3)^(3==2) 结果i=3,并flase
        //因前面判断为flase,后面不执行,直接出结果为flase。
        System.out.println(b);
        System.out.println(i);
    }
}

五、赋值操作符

 

注意++i 和j++的区别。

六、三元操作符

表达式?值1:值2
如果表达式为真 返回值1
如果表达式为假 返回值2
 

public class yunsuanfu {
    public static void main(String[] args) {

        int i = 5;
        int j = 6;

        int k = i < j ? 99 : 88;
        System.out.println(k);
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值