大数据必学Java基础(十八):条件运算符和位运算符

举报
Lansonli 发表于 2022/07/17 08:58:17 2022/07/17
【摘要】 ​条件运算符和位运算符一、条件运算符又称三元运算符/三目运算符1、格式a?b:c其中a是一个布尔类型的表达式,返回结果要么是true要么false,通过a的结果决定最终表达式的结果:如果a的结果是true,那么表达式最终结果为b如果a的结果是false,那么表达式最终结果为c2、代码public class TestOpe11{ public static void main(...

​条件运算符和位运算符

一、条件运算符

又称三元运算符/三目运算符

1、格式

a?b:c

其中a是一个布尔类型的表达式,返回结果要么是true要么false,通过a的结果决定最终表达式的结果:

如果a的结果是true,那么表达式最终结果为b

如果a的结果是false,那么表达式最终结果为c

2、代码

public class TestOpe11{
        public static void main(String[] args){
                int num = (5>7)?6:9 ;
                System.out.println(num);
                
                String str = (4==4)?"你好":"你不好" ;
                System.out.println(str);
                
                System.out.println((4==4)?"你好":"你不好");
        }
}


3、练习

import java.util.*;//*代表所有
public class TestOpe12{
        public static void main(String[] args){
                //实现功能:男孩女孩选择晚饭吃什么,如果意见一致,听男生的,如果意见不一致,听女生的
                
                //1.要让男孩女孩选择晚饭吃什么:
                Scanner sc = new Scanner(System.in);
                System.out.println("请选择今晚吃什么:1.火锅 2.烧烤 3.麻辣烫 4.西餐");
                System.out.println("请男孩选择:");
                int boyChoice = sc.nextInt();
                System.out.println("请女孩选择:");
                int girlChoice = sc.nextInt();
                //2.判断:
                System.out.println(boyChoice==girlChoice?"听男孩的":"听女孩的");
        }
}


PS:三目运算符可以代替后续我们要学习的if-else

二、位运算符(了解)

位运算符:&,|,^,~ , >>,<<,>>>

如何区分逻辑运算符和位运算符:

逻辑运算符:左右连接的是布尔类型的操作数

位运算符:左右连接的是具体的数值

1、<< 左移

3<<2 = 12

面试题: 4乘以8最快的方式: 4<<3

2、>> 有符号右移

6>>2 = 1

-6>>2 = -2

3、>>> 无符号右移

6>>>2 = 1

4、& 与

6&3 = 2

5、| 或

6|3=7

6、^ 异或

6^3 = 5

7、~ 反

~6 = -7

PS:

byte类型的表数范围的 -128是怎么算出来的

127: 01111111

-128: 10000000

一看就是个负数

减1: 01111111

取反: 10000000 ---》2^7 = 128

加负号: -128

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。