首頁 > Java > java教程 > 主體

Java各種運算符應用實例分析

王林
發布: 2023-05-04 21:43:05
轉載
1632 人瀏覽過

一、算數運算子

1.簡介

再Java中,使用算術運算子 、-、*、/、%分別代表加減乘除,取模。

2.運用

在java中 有三種:1、正常的運算。 2、作為正負來用。 3.作為連接符(任意資料類型的資料與字串連結的時候,那個號碼就是連接符號)

#實例:

package com;
public class liu {
	public static void main(String[] args) {
		//实例一:作为正常运算
		int c = 1;
		int d = 2;
		int e = c + d;
		System.out.println(e)  //最后结果为3;
		//实例二:作为连接符
		//已知有两个变量a和b,值分别为1和2,在控制台上输出a + b = 3, 1 + 2 = 3
		int a = 1;
		int b = 2;
		System.out.println(a + " + " + b + " = " + (a + b));  
		//控制台显示结果为:a + b = 3。
		//注意此时的"+","="作为字符串,而(a + b)则进行运算。
	}
}
登入後複製
-

#在java中有兩種:1、正常的運算。 2、作為正負來用。

實例:

package com;
public class liu {
	public static void main(String[] args) {
		int a = 1;
		int b = 3;
		int c = b-a;
		System.out.println(c);  //运算结果:2。
	}
}
登入後複製
*

#實例:

package com;
public class liu {
	public static void main(String[] args) {
		int i = 4;
		int j = 2;
		int a = i*j;
		System.out.println(a);//8
	}
}
登入後複製
/

當參與/運算的兩個數字都是整數的話,結果為整數,反之為浮點數。

實例:

package com;
public class liu {
	public static void main(String[] args) {
        //实例1:作为整数运算
		int i = 4;
		int j = 2;
		int a = i / j;
		System.out.println(a);//2
     	//实例2:作为浮点运算
		int i = 5;
		double j = 2;
		double a = i / j;
		System.out.println(a);//2.5
	}
}
登入後複製
%

整數的取餘運算(有時稱為取模)以%表示。

package com;
public class liu {
	public static void main(String[] args) {
		int i = 2;
		int j = 3;
		System.out.println(i % j);  //0
		int a = 4;
		int b = 2;
		System.out.println(a % b); //2
	}
}
登入後複製

二、自增自減運算子

單獨使用:不管 在前或在後,結果都是一樣,詳見實例1。

參與運算: 在前:先自身加1,然後再參與運算,詳見實例2; 在後:先參與運算,然後再自身加1,詳見實例3。

實例:

package com;
public class liu {
	public static void main(String[] args) {
		//实例1:单独运算。
		int i = 1;
		i++; // i = i + 1
		++i;
		System.out.println(i);//结果都等于2。
		//实例2:++在前。
		int i = 1;
		int j = ++i;
		System.out.println(j);//2
		System.out.println(i);//2	
		//实例3:++在后。
		int i = 1;
		int j = i++;
		System.out.println(j);//1
		System.out.println(i);//2
	}
}
登入後複製

單獨使用:不管–在前後,結果都是一樣,詳見實例1。

參與運算:–在前:先自身減1,然後再參與運算,詳見實例2;–在後:先參與運算,然後再自身減1,詳見實例3。

package com;
public class liu {
	public static void main(String[] args) {
		//实例1:单独运算。
		int i = 2;
		i--; // i = i - 1
		--i;
		System.out.println(i);//结果都等于1。
		//实例2:--在前。
		int i = 1;
		int j = --i;
		System.out.println(j);//1
		System.out.println(i);//1	
		//实例3:--在后。
		int i = 1;
		int j = i--;
		System.out.println(j);//2
		System.out.println(i);//1
	}
}
登入後複製

三、賦值運算子

可以在賦值中使用二元運算符,形式非常簡單:x = 4 等價於 x = x 4。

常見的賦值運算子有:=、 =、-=、*=、/=、%=。

下面以=為例:

package com;
public class liu {
	public static void main(String[] args) {
		int i = 1;
		i += 2; // i = i + 2
		System.out.println(i); //输出结果3 
		byte b = 1;
		b += 2; // b = (byte)(b + 2)
		System.out.println(b);
	}
}
登入後複製

四、關係運算子

關係運算子得出來的結果一定是boolean類型的數據,也就是說要不是true ,要嘛是false

常見的關係運算子:>、<、>=、<=、!=、==。

實例:

package com;
public class liu {
	public static void main(String[] args) {
		int i = 3;
		int j = 2;
		System.out.println(i > j);//true
		System.out.println(i < j);//false
		System.out.println(i >= j);//true
		System.out.println(i <= j);//false
		System.out.println(i != j);//true
		System.out.println(i == j);//false  
		// ==是比较两边的大小,=是赋值。
	}
}
登入後複製

五、邏輯運算子

左右兩邊的資料的資料型別都是boolean型別,結果都是boolean型別。

&(單與)

兩邊只要有一個是false,結果就為false

實例:

package com;
public class Demo12 {
	public static void main(String[] args) {
		System.out.println(true & true); 
		System.out.println(true & false); //false
		System.out.println(false & false);
		System.out.println(false & true); //false
	}
}
登入後複製

| (單或)

兩邊只要有一個是true,結果就為true。

實例:

package com;
public class Demo12 {
	public static void main(String[] args) {
		System.out.println(true | true);
		System.out.println(true | false);
		System.out.println(false | false); //false
		System.out.println(false | true);
	}
}
登入後複製

^(異或)

兩邊相同為false,兩邊不同為true。

實例:

package com;
public class Demo12 {
	public static void main(String[] args) {
		System.out.println(true ^ true); //false
		System.out.println(true ^ false);
		System.out.println(false ^ false); //false
		System.out.println(false ^ true);
		
	}
}
登入後複製

! (非)

直接就是取反。

實例:

package com;
public class Demo12 {
	public static void main(String[] args) {
		System.out.println(!true); //false
		System.out.println(!false); //true
		System.out.println(!!true); //true
		System.out.println(!!!true); //false
	}
}
登入後複製

&&(雙與)

兩邊只要有一個是false,結果就為false。

實例:

package com;
public class Demo12 {
	public static void main(String[] args) {
		System.out.println(true && true);
		System.out.println(true && false); //false
		System.out.println(false && false); //false
		System.out.println(false && true);  //false
	}
}
登入後複製

&和&&的差別?

  • &&:如果左邊為false,右邊就不再執行了,結果就為false。

  • &:如果左邊為false,右邊仍會執行,結果就為false。

|| (雙或)

兩邊只要有一個是true,結果就為true。

實例:

package com;
public class Demo12 {
	public static void main(String[] args) {
		System.out.println(true || true); //true
		System.out.println(true || false); //true
		System.out.println(false || false); //false
		System.out.println(false || true); //true
	}
}
登入後複製

|和||的差別?

  • ||:如果左邊為true,右邊就不再執行了,結果就為true。

  • |:如果左邊為true,右邊還是會執行,結果就為true。

六、位元運算子

兩邊的資料都是數字,結果也是數字。

常見的位元運算子:&(與位元運算)、|(或位元運算)、^(異或位元運算)、~(位元取反)、>>(右移位運算)、<<(左移位運算)、>>>(無符號右移)。

實例:

package com;
public class Demo01 {
	public static void main(String[] args) {
	    System.out.println(3 & 2); //2
		System.out.println(3 | 2); //3
		System.out.println(3 ^ 2); //1
		System.out.println(~3);//-4
		System.out.println(3 >> 2);//0
		System.out.println(3 << 2);//12
		System.out.println(3 >>> 2);//0
		System.out.println(-3 >> 2);//-1
		System.out.println(-3 >>> 2);
	}
}
登入後複製

>>和>>>差別是什麼?

>>:如果資料是負數,最左邊的符號位是1,右移之後,左邊要補1。

如果資料是正數,最左邊的符號位是0,右移之後,左邊要補0。

>>>:不管資料是正數還是負數,右移之後,左邊都補0。

七、三元運算子

格式:條件式?表達式1 : 表達式2; 等同於x > y ? x : y

條件表達式式的結果一定是boolean型別

執行流程:

如果條件式為true,就會執行表達式1,不會執行表達式2

如果條件表達式為false,就會執行表達式2,不會執行表達式1

實例:

package com;
public class Demo02 {
	public static void main(String[] args) {
		//获取两个数的较大值
		int i = 2;
		int j = 3;
		//第一种:
		int max = i > j ? i : j;
		System.out.println(max);  //3
		//第二种:
		System.out.println(i > j ? i : j);
		//表达式1和表达式2既然会得到一个结果,如果传递给一个变量去接收,该变量的数据类型应该和表达式1和表达式2的结果的数据类型匹配。
		//浮点型:
		double d = 3 > 2 ? 1 : 2;
		System.out.println(d); //输出:1.0
		//字符型:
		char c1 = 3 > 2 ? 97:98;
		System.out.println(c1); //输出:a
	}
}
登入後複製

以上是Java各種運算符應用實例分析的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:yisu.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!