java的比较语句_Java比较运算符和分支语句

Java比较运算符和分支语句

练习题解题思路以及答案:

int a = 1;

int b = a++ + ++a + --a + a++ - a--;

// 分别算出 a 与 b的值

a = 2

b = 5

思路图:

比较运算符

用来比较数值的大小或者是否等于,只要使用了比较运算符那么结果一定是boolean类型。

比较运算符

名称

举例

结果

>

大于

a=5;b=2;a>b

true

<

小于

a=5;b=2;a

false

>=

大于等于

a=5;b=2;a>=2

true

<=

小于等于

a=5;b=2;a<=2

false

==

等于

a=5;b=2;a==b

false

!=

不等于

a=5;b=2;a!=b

true

也就说只要用到了比较运算符 肯定就是判断条件是否成立。

逻辑运算符

与、或、非

与运算:&&

比较语句1 && 比较语句2

结论:同真为真,其余为假(如:2>1 && 3>1 两个都为 true 才能为 true ,一个不成立就会是false)

或运算:||

比较语句1 || 比较语句2

结论:同假才为假,其余全为真(如:1>2 || 3>8 结果为 false )

非运算: !

!真 结果 false

!假 结果 true

PS:比较的时候不一定非要数字比较,直接写 false || true 一样可以得到 答案(true)

其他知识补充

java输入:

import java.util.Scanner; // 这一步叫导包,必须写在 class 头顶

// 下面三步必须写在 方法里面(主函数、主方法、入口函数)

Scanner in = new Scanner(System.in);

in.next();// 字符串 这一步会让你输入字符串

in.nextInt();//数字 这个方法教你输入数字,输入非数字时,会报错

分支语句

Java 中的分支语句有两种 if (一般用这个)和 switch 。

作用:满足某条件的时候执行下面的代码,不满足的时候不执行。

语法:

1. 第一种

if(条件){

满足 条件 的时候执行此处代码;

}

示例:

if(3>2){

System.out.println("3 > 2 成立");

}

// 上面会发现只能输出一种情况也就是满足的时候,那不满足呢?

2. 第二种

if(条件1){

满足 条件1 的时候执行此处代码;

}else{

不满足 条件1 的时候执行此处代码;

}

示例:

if(3>2){

System.out.println("3 > 2 成立");

}else{

System.out.println("3 > 2 不成立");

}

// 上面的代码能看出来,无论成功与否都会有且只会执行一处代码,不会同时打印输出。

3. 第三种

if(条件1){

满足 条件1 执行此处代码;

}else if(条件2){

满足 条件2 执行此处代码;

}else{

条件1 和 2 都不满足的时候执行此处;

}

// 上面这种就能多样性判断,但是有一个问题!那就是代码从上到下运行下来,如果 条件1 满足 条件2 也满足,但是在 条件1 满足的时候就会进入对应的代码块,导致 条件2 不能执行。

if(a > 60){

System.out.println("及格");

}else if(a > 80){

System.out.println("优秀");

}else{

System.out.println("不及格");

}

// 明显以上代码有逻辑漏洞,当变量 a 是 90 的时候,明显意图是成绩优秀,但是在这里就只会出现及格,所以需要置换两处判断条件。 a > 60 和 a > 80 换位。

switch(值或者是变量){

case 值1:

当传入的值和值1相同时,执行的语句块;

break;

case 值2:

当传入的值和值2相同时,执行的语句块;

break;

......

case 值n:

当传入的值和值n相同时,执行的语句块;

break;

default:

当传入的值和上面所有的case后面的值都不相同时,执行的代码,和if里面的else作用一致;

}// 遇见 break 会跳到这里

// break 的作用:跳出当前循环体。 在这里就是跳出 switch

示例:

char grade = 'C';

switch(grade)

{

case 'A' :

System.out.println("优秀");

break;

case 'B' :

case 'C' :

System.out.println("良好");

break;

case 'D' :

System.out.println("及格");

case 'F' :

System.out.println("你需要再努力努力");

break;

default :

System.out.println("未知等级");

}

System.out.println("你的等级是 " + grade);

}

补充:三元运算符

语法:

条件 ? 成立执行这里 : 不成立执行这里;

冒号前面是成立执行

后面是不成立执行

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值