%02 java_day02-java运算符

4 运算符

4.1 算数运算符

运算符和表达式

运算符:操作变量和常量

用运算符将变量和常量连接起来的表达式

算数运算符

运算符

示例

加 +

减 -

乘 *

除 /

12/5=2

求模 %

12%5=2

int a = 12;

int b = 5;

double c = 7.0;

double d = 3.0;

System.out.println(a + b);

System.out.println(a - b);

System.out.println(a * b);

System.out.println(a / b); // 12/5=2

System.out.println(a / c); // 12/7.0=1.7142857142857142

System.out.println(a / d); // 12/3.0=4.0

System.out.println(a % b); // 12%5=2

注意

两个整数 / 得到整数 % 得到余数

double参与 / 得到小数

+ 运算符

字符 + 字符 / 字符 + 整数 ===> 运算过程转换为 int

char a = 'a'; // a = 97 A = 65 '0' = 48

char b = 'b';

int c = a + b;

System.out.println(a + 1); // 98

System.out.println(a + b); // 195

System.out.println(c); // 195

字符串 + 字符串 ===> 拼接

String i = "lll";

String j = "mmm";

System.out.println(i + j); // lllmmm

整数/浮点数 + 字符串 ===> 从左到右,算数+ 或 拼接

int k = 12;

int l = 13;

System.out.println(i + k); // lll12

System.out.println(k + l + j); // 25mmm

System.out.println(k + j + l); // 12mmm13

double m = 1.23;

System.out.println(m + i); // 1.23lll

double n = 1.23;

System.out.println(m+n+i); // 2.46lll

算数运算符两边不同数据类型自动提升

char byte short 自动转换成 int

char byte short -> int -> long -> float -> double

double e = 1 + 2.3;

System.out.println(e);

byte f = 23;

short g = 34;

int h = f + g;

System.out.println(h);

4.2 赋值运算符

运算符

示例

等同

赋值 =

int a = 10

加 +=

a += 10

a = a + 10

减 -=

a -= 10

a = a - 10

乘 *=

a *= 10

a = a * 10

除 /=

a /= 10

a = a / 10

求模 %=

a %= 10

a = a % 10

赋值过程中的强制类型转换

short b = 12;

b += 20;

// b = (short) (b + 20) class java.lang.Short

4.3 自增自减运算符 ++ --

单独使用 前后无差别

int i = 10;

++i;

System.out.println(i); // 11

int i = 10;

i++;

System.out.println(i); // 11

与其它操作一起使用 赋值 打印

在前,先+-后操作

int i = 10;

System.out.println(++i); // i 先加 1 再 打印

// i = 11

在后,先操作后+-

int i = 10;

System.out.println(i++); // i 先 打印 再 加 1

// i = 11

4.4 关系运算符 结果为boolean值 true/false

运算符

含义

==

相等

!=

不相等

>

大于

>=

大于等于

<

小于

<=

小于等于

int i = 20;

int k = 30;

System.out.println(i == k); // false

System.out.println(i != k); // true

System.out.println(i > k); // false

System.out.println(i >= k); // false

System.out.println(i < k); // true

System.out.println(i <= k); // true

System.out.println(i = k); // 先把k赋值给i,再打印i 结果 30

4.5 逻辑运算符

运算符

含义

判断

&

同真为真

|

有真为真

!

取反

^

异或

不同为真

int a = 4;

System.out.println(a > 3 & a < 6); // true & true = true

System.out.println(a > 3 | a > 6); // true | false = true

System.out.println(a > 3 ^ a > 6); // true ^ false = true

System.out.println(a > 3 ^ a < 6); // true ^ true = false

System.out.println(!(a > 3)); // !true = false

短路与&&短路或||

运算符

含义

判断

&&

左边为false 右边不执行

||

左边为true 右边不执行

&和|

左边右边都执行

int i = 10;

int j = 20;

System.out.println((i++ > 100) && (j++ > 20));

System.out.println(i); // 11

System.out.println(j); // 20

int i = 10;

int j = 20;

System.out.println((i++ > 5) || (j++ > 20));

System.out.println(i); // 11

System.out.println(j); // 20

4.6 三元运算符

格式

关系表达式 ? 表达式一 : 表达式二

// 案例

a > b ? a : b

// 如果a>b 则 a 否则 b

// 真取左边 假取右边

案例

// 判断两个数相等

int a = 190;

int b = 300;

System.out.println(a == b ? true : false);

// 获取三个数的最大值

// 两两比较,临时变量存储最大值

int a = 12;

int b = 34;

int c = 45;

int res = a > b ? a : b;

res = res > c ? res : c;

获取终端输入 Scanner类

导包

创建对象

获取输入

sc.nextInt()整数 sc.next()字符串 nextDouble()小数

import java.util.Scanner; // 导包

public class DemoScanner {

public static void main(String[] args) {

Scanner sc = new Scanner(System.in); // 创建对象

System.out.println("输入int");

int a = sc.nextInt(); // 获取输入

System.out.println("a = " + a);

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值