首页 > 其他 > 详细

Operator&Scanner&Switch学习

时间:2021-05-25 15:22:38      阅读:10      评论:0      收藏:0      [点我收藏+]

Operator(运算符)

c++和++c

public class AndOrNot1 {
    public static void main(String[] args) {
        int c = 5;
        boolean d = 6>c++;
        //由于这里是c++,所以先执行代码判断6>5,得到true,然后再执行c++自加:c=c+1=6
        System.out.println(d);//true
        System.out.println(c);//6
    }
}
public class AndOrNot2 {
    public static void main(String[] args) {
        int c = 5;
        boolean d = 6>++c;//由于这里是++c,进行自加c = c + 1,然后再开始比较6>6,得到false
        System.out.println(d);//false
        System.out.println(c);//6
    }
}

<<和>>

0000 0000   0
0000 0001   1
0000 0010   2
0000 0011   3
0000 0100   4
0000 1000   8
0001 0000   16

以上是二进制对应的十进制,可以看出每*2就相当于数字1向左移动一位,所以

如何以最快的效率计算2x8:

2x8=16=2x2x2x2,用到上面的结论,2要变成2^4就相当于左移了三次,答案为:

System.out.println(2<<3);

<< 左移*2 >>右移/2

字符串连接符 +

int a = 10;
int b = 20;
System.out.println(""+a+b);//1020,如果字符串在前面,后面的就会拼接
System.out.println(a+b+"");//30,如果字符串在后面,前面会进行运算
System.out.println(a+""+b);//1020

在“+”两侧,只要有一方出现了String类型,他就会把另外一个操作数或者其他操作数都转化为String,再进行连接

a+=b;//a = a+b
a-=b;//a = a-b

x ? y : z

如果x==true,则结果为y,否则结果为z

int score = 80;
String type = score < 60 ? "不及格":"及格";//必须掌握
System.out.println(type);//及格

Scanner

public class Test03 {
//输入多个数字,并求其综合与平均数,每输入一个数字用回车确认,通过输入非数字来结束输入并输出执行结果:
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        double sum = 0;
        int t = 0;
        System.out.println("请输入数字:");

        while (scanner.hasNextDouble()){
            double x = scanner.nextDouble();
            t++;
            sum = sum + x;
            System.out.println("当前是第"+t+"次输入,总和为:"+sum);
        }
        System.out.println("输入总和为"+sum);
        System.out.println("输入平均值为"+sum/t);

        scanner.close();
    }
}

最开先要开始用Sanner的时候,就应该先把scanner.close();在最后面写上

Switch

public class SwitchDemo01 {
    public static void main(String[] args) {
        char grade = ‘A‘;

        switch (grade){
            case ‘A‘:
                System.out.println("优秀");
                break;
            case ‘B‘:
                System.out.println("良好");
                break;
            case ‘C‘:
                System.out.println("及格");
                break;
            case ‘D‘:
                System.out.println("再接再厉");
                break;
            case ‘E‘:
                System.out.println("挂科");
                break;
            default:
                System.out.println("未知等级");
        }
    }
}

注意事项

  • 每个case后面都要写break

  • default是没匹配到执行的语句

  • JDK7过后可以使用String类型

Operator&Scanner&Switch学习

原文:https://www.cnblogs.com/littlebear-s/p/14808257.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!