Java基础之算术运算符

网友投稿 580 2022-05-28

1 运算符

1.1 算术运算符

public static void main(String[] args) { int a = 6; int b = 4; System.out.println(a + b); //10 System.out.println(a - b); //2 System.out.println(a * b); //24 System.out.println(a / b); //1 System.out.println(a % b); //2 //除法得到商,取余得到余数 //整数相除只能得到整数,要想得到小数要有浮点数参与 System.out.println(6.0 / 4); //1.5 }

字符进行“+”操作时,拿的是字符在计算机底层 对应的数值 进行操作

‘A’ > 65

‘a’ > 97

‘o’ > 48

算术运算符表达式中 多个基本数据类型 的值的时候,整个算术运算符的 类型 会 自动提升

提升规则:

Java基础之算术运算符

1.byte类型、short类型和char类型都会提升到int类型

2.整个表达式的类型自动提升到表达式中 最高等级操作数同样类型

等级顺序:byte、short、char -> int -> long -> float -> double

范例:

public class Demo { public static void main(String[] args) { int i = 10; char c = '0'; System.out.println(i + c); //75 //char cj = i + c; //char类型会自动提升到int类型 int j = i + c; System.out.println(j); //75 //10.1是double类型高于int类型 //int k = 10 + 10.1; double k = 10 + 10.1; } }

当 “+” 操作出现字符串时,这个 “+” 是 字符串连接符 ,而不是算术运算符

范例:

System.out.println('it'+6+66) //it666

在 “+” 操作中,如果出现字符串就是连接符,否则就是算术运算。当连续 “+” 操作时,从左到右依次执行。

范例:

System.out.println(1+99+'it') //100it

1.2 赋值运算符

注意事项:扩张的赋值运算符 隐含 强制类型转换。

1.3 自增自减运算符

++ 和 - - 可以放变量前面也可以放变量后面

单独使用时, ++ 和 - - 放变量前后结果都是一样的

参与操作使用时,如果放变量后面,先拿变量参与操作,后拿变量做++或- -;

参与操作使用时,如果放变量前面,先拿变量做++或- -,后拿变量参与操作。

范例:

public class Demo { public static void main(String[] args) { //单独使用 int i = 10; //i++; ++i; System.out.println(i); //11 //参与操作使用++在后面 int b = 10; int j = b++; System.out.println(b); //11 System.out.println(j); //10 //参与操作使用++在前面 int c = 10; int k = ++c; System.out.println(c); //11 System.out.println(k); //11 } }

1.4 关系运算符

关系运算符的结果都是boolean类型,要么true,要么false

1.5 逻辑运算符

1.6 短路逻辑运算符

范例:

public class Demo { public static void main(String[] args) { int i = 10; int j = 20; //&& :具有短路效果,符号左边为false的时候,右边就不执行 //如果符号左边为true,右边要继续执行 System.out.println((i++>100) && (j++>100)); //false & false, System.out.println("i="+i); //11 System.out.println("j="+j); //20 } }

注意事项:

1、逻辑与 &:无论左边真假,右边都要执行

2、短路与 &&:如果左边为真,右边执行;如果 左边为假,右边不执行

3、逻辑或 | : 无论左边真假,右边都要执行

4、短语或 ||:如果左边为假,右边执行;如果 左边为真,右边不执行

1.7 三元运算符

格式:关系表达式 ? 表达式1 :表达式2;

范例:a > b ? a : b;

计算规则:

首先计算关系 表达式的值 如果值为 true,表达式1 的值就是运算结果;

如果值为 false , 表达式2 的值就是运算结果。

范例:

public class Demo { public static void main(String[] args) { int i = 10; int j = 20; //输出两个数据中的较大值 int max = i > j ? i : j; System.out.println("max=" + max); //20 } }

1.8 Scanner使用的基本步骤

导包的三种方式:

1、手动导包:import java.util.Scanner;

2、快捷键导包:创建好Scanner对象后,鼠标放在Scanner上按Alt+Enter

3、自动导包:写Scanner单词创对象时,按tab补全导包

导包的步骤:

1.导包(导包必须在定义类上面)

import java.util.Scanner;

2.创建对象(只有sc是变量名可以变,其他都不可以变)

Scanner sc = new Scanner(System.in);

3.接收数据

int i = sc.nextInt(); //i是变量名可以变,其他都不能变 sc.nextInt(); //Ctrl+alt+v:补全生成左边的内容

1.9 案例:三个和尚

案例:输入三个和尚的身高,利用三元运算符比较求出最高的和尚

import java.util.Scanner; public class Demo { public static void main(String[] args) { //从键盘输出三个身高求出最高值 Scanner sc = new Scanner(System.in); //键盘输入三个数值 int height1 = sc.nextInt(); int height2 = sc.nextInt(); int height3 = sc.nextInt(); int temp = (height1>height2) ? height1:height2; int max = (temp>height3) ? temp:height3; System.out.println(max); } }

Java 面向对象编程

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:硬件-NKK OLED可编程按键开关
下一篇:什么是java并发编程
相关文章