Java基础语法:运算符

189 阅读4分钟

1. 算术运算符

四则运算符

  1. 加法 +
  2. 减法 -
  3. 乘 *
  4. 除 /

取模(取余数)

四则运算符中“+”有三种常见的用法:

  1. 对于数值来说那就是加法
  2. 对于字符char类型来说,在运算之前都会被提升为int,然后再计算 char字符类型和int数字类型,之前的对照关系表:ASCII,Unicode
  3. 对于字符串String,加号代表字符串连接操作
System.out.println("hello"+"world")//helloworld
System.out.println("hello" + 10 + 10)//hello1010
System.out.println("hello" + (10 + 10))//hello20

自增运行、自减运算

基本含义: 让一个变量涨一个数字1,让变量降一个数字1

使用格式: 写在变量名称之前,或者写在变量名称之后

使用方式:

  1. 单独使用,不和其他然后重装混合,自己独立成功一个步骤;
  2. 混合使用,和其他操作混合,例如与赋值混合,与打印操作混合 使用区别:
  3. 在单独使用的时候,前++与后++没有区别,++num,num++结果是一样的
  4. 在混合使用的时候,区别很大 1)如果是前++,那么变量立刻马上+1,然后拿着结果进行使用,先加后用 2)如果是后++,那么首先使用变量原来的数值,然后再让变量+1,先用后加

代码例子说明:

public class Demo06Operator{
	public static void main(String [] args){
		
		/*
		
		自加运算++
		
		*/
		
		int num = 10;
		System.out.println(num1);//输出10
		
		++numl;//单独使用,前++
		System.out.println(num1);//输出11
		
		numl++;//独使用,前++
		System.out.println(num1);//输出12
		
		
		//与打印操作混合的时候
		int num2 = 20;
		System.out.println(++num1);//前++,先加后用,所以输出为21
		System.out.println(num1);//21
		
		int num3 = 30;
		System.out.println(num1++);//后++,先用后加,所以输出为30
		System.out.println(num1);//31
		
		
		/*
		
		自减运算--
		
		*/
		
		//单独使用
		int a = 10;
		System.out.println(a);//输出10
		--a;//前--
		System.out.println(a);//输出9
		a--;//后--
		System.out.println(a);//输出8
		
		
		//与打印操作混合使用
		int b = 20;
		System.out.println(--b);//前--,先减后用,所以输出19
		System.out.println(b);//输出19
		
		int c = 30;
		System.out.println(c--);//后--,先用原来的数字,所以输出30
		System.out.println(c);//29
		
		
		//与赋值操作混合
		int num4 = 40;
		int sesult1 = --num4;//混合使用,前--,变量立刻-1变成39,然后将变量结果交给reult1变量
		System.out.println(sesult1);//39
		System.out.println(num4);//39
		
		int num5 = 50;
		int sesult2 = num5--;//混合使用,后--,先使用把原先的数据50交给sesult2,然后自己再-1
		System.out.println(sesult2);//50
		System.out.println(num4);//49
		
		
		int x = 10;
		int y = 20;
		int sesult3 = ++x + y--
		System.out.println(sesult3);//31
		System.out.println(x);//11
		System.out.println(y);//19
		

		
		
	}
}

2. 赋值运算符

基本赋值运算符

就是一个等号“=”,代表将右边的数值赋值给左边的变量

int a = 30;//将30赋值给变量a

复合赋值运算符

+= a += 3 相当于 a=a+3;

-= a -= 3 相当于 a=a-3;

*= a = 3 相当于 a= a3;

/= a /=3 相当于 a=a/3;

%= a %=3 相当于 a=a%3;

3. 比较运算符

大于:>

小于:<

大于等于:>=

小于等于:<=

等于:===

不等于:!=

注意事项:

  1. 比较运算符的结果一定是boolean值,成立是true,不成立就false 2.如果进行多次判断不能连着写,如:0<x<3,这种写法是错误的(需要使用逻辑运算符)

  2. 逻辑运算符 与(并且) && 全部为true,结果才为true;

或(或者 ) || 只要一个为真,结果就为true

非(取反) ! 本来是true,结果为false,本来是fals,结果为true

与&&,或||,具有短路效果,如果根据左边已经可以判断得到最终结果,那么右边的代码将不足执行,参与节省一定的性能

注意事项:

  1. 逻辑运算符只能用于boolean值
  2. 与、或需要左右各有一个boolean值,但取反只需要一个boolean值即可

代码例子说明:

public class Demo09Logic{
	public static void main(String [] args){
		
		//与&&
		System.out.println(true && true);//true
		System.out.println(true && false);//false
		System.out.println(3>4 && 3<4);//false
		System.out.println(3<4 && 3<5);//true
		System.out.println(3>4 && 3>5);//true
		
		//或者||
		System.out.println(true || true);//true
		System.out.println(true || false);//true
		System.out.println(3>4 || 3<4);//true
		System.out.println(3<4 || 3<5);//true
		System.out.println(3>4 || 3>5);//false
		
		//非 !
		System.out.println(!true);//false
		System.out.println(!false);//true
		
		//短路
		int a= 10;
		System.out.println(3>4 && ++a<100);//false,3>4为假,只要一个为假结果就为假,右边的代码没有必要执行下去了
		System.out.println(a)//10
		

		int b= 20;
		System.out.println(3<4 || ++b<100);//true,3<4为真,只要一个为真结果就为真,右边的代码没有必要执行下去了
		System.out.println(b)//20
		


	}
}

4. 三元运算符

一运算符:需要一个数据就可以操作的运算符

二运算符:需要二个数据才可以操作的运算符

三运算符:需要三个数据才可以操作的运算符

格式:数据类型 变量名称 = 条件判断 ? 表达式A:表达式B

流程:

首先判断结果是否成立

  1. 如果结果为true,那么将表达式A赋值给左边变量

  2. 如果结果为false,那么将表达式B赋值给左边变量

二者选其一

代码例子说明:

public class Demo10{
	public static void main(String [] args){
		

			int a = 10;
			int a = 20;
			
			int max = a>b ? a:b;
			System.out.println("max:"+max);//max:20


	}
}