运算符与控制语句

                                        运算符与控制语句


一.双目运算符

1.1赋值运算符

​ 基本赋值运算符

​ = Java中唯一一个自右向左运算的符号;

​ 扩展的赋值运算符

​ += 、-= 、*= 、/= 、%=(算术运算符+基本赋值运算符)

推荐使用: 1.提高执行效率   2.自动做强制类型转换

缺点:不直观

1.2​ 关系运算符

==、!=、>、>=、<、<=

操作符描述

==   检查如果两个操作数的值是否相等,如果相等则条件为真

!=    检查如果两个操作数的值是否相等,如果值不相等则条件为真

>     检查左操作数的值是否大于右操作数的值,如果是那么条件为真

>=   检查左操作数的值是否大于或等于右操作数的值,如果是那么条件为真

<      检查左操作数的值是否小于右操作数的值,如果是那么条件为真

<=    检查左操作数的值是否小于或等于右操作数的值,如果是那么条件为真

1.3逻辑运算符

&、|、^、!、&&、||

操作符描述

&    逻辑与,两个都为true才是true,一个为false就是false

|     逻辑或,一个为true就是true,两个都是false才是false

^     异或,相同为false,不同为true

!     非,取反  !true–>false  !false–>true

&&  短路与,两个都为true才是true,一个为false就是false

||     短路或,一个为true就是true,两个都是false才是false

推荐使用

短路**&&、||**:第一个操作数就已经能够决定最终的结果了,第二个操作数将不再执行

2.三目运算符

条件运算符也被称为三元运算符

条件表达式 ? 值1 : 值2;

1)执行条件表达式–>值为Boolean类型的表达式

2)如果为true,最终的结果取值1

3)如果为false,最终的结果取值2


二、键盘录入及随机函数

Scanner : 可以接收用户收入的内容|接收键盘输入

1.创建这个类型的变量|引用

引用数据类型 变量名|引用名 = new 引用数据类型();

Scanner sc= new Scanner();

2.根据引用数据功能

引用.功能名字();

sc.next();

1.导包

指明Scanner类的位置

import java.util.Scanner;

位置: 类的上面

2.创建类型的引用|变量名

3.使用功能

sc.nextInt() 接收用户输入的int类型的整数

sc.nextByte()

sc.nextShort()

sc.nextLong()

sc.nextDouble()

sc.nextFloat()

sc.next() 接收用户输入的字符串  遇到enter功能就结束

从有效字符开始接收,遇到空格,tab就不接受了,但是功能不会结束,知道遇到enter功能才会结束

sc.nextLine() 接收用户输入的一整行的内容,知道换行结束  enter换行

如果在nextLine的前面有使用到系列的next功能,需要处理遗留的enter问题

4.关闭

sc.close()关闭

友好的使用方式推荐关闭,但是不关闭也不会出错,注意:如果一旦关闭,必须在使用完成之后再关闭,否则重新开启也不可以使用

Random 产生随机数

1.导包

指明Random类的位置

2.创建引用数据类型的变量

3.使用功能

随机整数 引用.nextInt() 产生一个int范围内的随机整数

nextInt(整数n)  [0,n) 0~n之间的随机整数

随机小数

nextDouble() 随机小数-> [0.0,1.0)

*值1      值改变最大区间

+值2      只改变最小区间

公式:

[0,max]  ran.nextInt(max+1)+1;  ->[1,6]

[min,max]  ran.nextInt(max-min+1)+min ;  [0,max-min]+min->[min,max]

伪随机数:



三、流程控制语句

​ java中的流程控制语句

​ 顺序结构:从上倒下,从左到

​ 选择结构:根据选择,决定执行的内容

​ 循环结构:重复执行同样的操作

条件语句 - if…else语句

    单分支|单选泽

    if(条件表达式){

    语句体;

    }

    条件表达式必须值为boolean类型的表达式

    如果条件表达式结果为false,就不执行跳过整个if结构

    如果条件表达式结果为true,执行{}中的语句体

    双分支|双选择

    if(条件表达式){

    语句体1;

    }else{

    语句体2;

    }

    无论是否满足条件,都会执行语句体

    多分支|多选择:

    if(条件表达式1){

    语句体1;

    }else if(条件表达式2){

    语句体2;

    }else if(条件表达式3){

    语句体3;

    }

    ....

    else{

    以上条件都不满足执行的内容

    }

if语句和条件运算符之间的选择:

1.条件运算符肯定会得到结果

2.麻烦的使用if,简单的能使用条件运算符就是用条件运算符

无论是多选还是单选,双选,只要语句体只有1句,前后的{}可以省略


switch语句

switch语句:定值判断

    switch(表达式){

        case 值1:

            语句体1;

            break;

        case 值2:

            语句体2;

            break;

            ....

        default:

            语句体n;

            break;

    }

    表达式|变量: byte,short,int,char,枚举(1.5),字符串(1.7)

    case:拿表达式的结果与case后的值进行判断,如果相同,执行对应的语句体;

    break:结束这个switch语句,如果没有break会发生case穿透

    default: else作用一致,以上case都不满足条件,执行default中的语句体

    可以在switch语句中的任何位置,改变位置注意break的问题

    if语句可以做区间判断,可以做定值判断

    switch 只能做定值判断

你可能感兴趣的:(运算符与控制语句)