(Java)运算符

题目1

如果要打印一个字符串,需要使其输出结果为:“hello”,则以下哪种方式可以正确输出:( )

A.System.out.println("\\\"hello\\\"");
B.System.out.println("\\"hello\\"");
C.System.out.println("/\"hello/\"");
答案:A
解析:
System.out.println("hello");
System.out.println("\"hello\"");
System.out.println("\\");
System.out.println("\\\"hello\\\"");

hello
"hello"
\
\"hello\"
\"  ->  "
\\  ->  \

题目2

经过强制类型转换以后,变量b的值为多少( )
short a =128;
byte b =(byte) a;
答案:-128

在这里插入图片描述

-128
10000000 00000000 00000000 10000000-11111111 11111111 11111111 01111111-11111111 11111111 11111111 10000000-10000000 byte

增量运算符

在这里插入图片描述

a+=d;
->a=int(a+d);
//a=22;

自增/自减运算符

int a=10;
a=a++;
System.out.println(a);
//10
int a=10;
a=++a;
System.out.println(a);
//11

关系运算符

int a=10;
int b=11;
System.out.println(a>b);
System.out.println(a<b);
//false
//true

像a>b这种表达式的结果只能是true或false

逻辑运算符(重点)

逻辑与&&

表达式1 && 表达式2,左右表达式必须是boolean类型的结果

短路与:如果表达式1结果为假,则表达式2不用算,整体结果为假

在这里插入图片描述

a和b都不是布尔表达式,所以报错

在这里插入图片描述

逻辑非!

! 布尔表达式

移位运算

<<左移一位,相当于*2;>>右移一位,相当于/2;

无符号右移>>>

System.out.println(-1>>>1);
//11111111 11111111 1111111 1111111
//01111111 11111111 1111111 1111111  -> 2147483647

不存在无符号左移<<<
右边不是符号位

运算符的优先级

+的优先级要高于 >>

int a=10;
int b=20;
int c=a+((b-a)>>1);
System.out.println(c);
//15
//c是a和b的平均值

idea中注释快捷键: ctrl +shift+/
ctrl+/

Java中的输入

在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值