溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

java數(shù)據(jù)類型與運(yùn)算符有哪些

發(fā)布時(shí)間:2021-10-15 11:04:40 來(lái)源:億速云 閱讀:103 作者:iii 欄目:開發(fā)技術(shù)

本篇內(nèi)容介紹了“java數(shù)據(jù)類型與運(yùn)算符有哪些”的有關(guān)知識(shí),在實(shí)際案例的操作過(guò)程中,不少人都會(huì)遇到這樣的困境,接下來(lái)就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

目錄
  • 數(shù)據(jù)類型

    • 布爾類型

    • 字符串類型String

    • 拼接字符'+'

    • 轉(zhuǎn)義字符

  • 運(yùn)算符

    • 加減乘除

    • 模運(yùn)算

    • 增量賦值運(yùn)算符

    • 自增運(yùn)算符和自建運(yùn)算符

    • 賦值運(yùn)算符

    • 判斷運(yùn)算符

    • 邏輯判斷符

    • 按位運(yùn)算符

    • 移位運(yùn)算

    • 條件運(yùn)算符

    • 運(yùn)算符優(yōu)先級(jí)

數(shù)據(jù)類型

布爾類型

Java當(dāng)中的bool類型也是兩個(gè):true(真) 和false(假)

不同于C語(yǔ)言,在C語(yǔ)言中,我們可以將一個(gè)數(shù)字放在bool類型中,0為假,非0為真

int fun(){
	return 1;
}
bool a = fun();

在Java中,bool類型沒(méi)有具體的值,如果按照上述C語(yǔ)言的寫法,則會(huì)出錯(cuò),true就是true,false就是false,沒(méi)有其他的值。

System.out.println(true);
System.out.println(false);

輸出結(jié)果如下:

true
false

在JVM規(guī)范中,并沒(méi)有規(guī)定bool類型大小,但是在有的書中,bool類型是1個(gè)字節(jié)大小,有的書中是1個(gè)比特位大小。

字符串類型String

在Java中,沒(méi)有指針,但是有單獨(dú)的字符串類型String

String 也叫引用類型

String str = "abcde";
System.out.println(str);

拼接字符'+'

System.out.println("hello"+"world");

執(zhí)行結(jié)果

helloworld

+可以將兩個(gè)字符串拼接

但是如下代碼的執(zhí)行結(jié)果卻不同

System.out.println("hello"+10+20);
System.out.println(10+20+"hello");
System.out.println("hello"+(10+20));
System.out.println(10+""+20+"hello");

執(zhí)行結(jié)果如下:

hello1020//10和20被拼接成了字符串
30hello//10和20先作和,變成30
hello30//括號(hào)括了起來(lái)加和之后變成字符串
1020hello
//變成字符串,因?yàn)?0和20中間有一個(gè)空字符串使得10和20沒(méi)有加和

轉(zhuǎn)義字符

轉(zhuǎn)義字符''和C語(yǔ)言一樣

會(huì)和下一個(gè)字符合為另一個(gè)字符

比如我們熟知的\n換行

如果要打印\n,可以用雙轉(zhuǎn)義

System.out,println("\\n");

輸出結(jié)果如下:

\n

運(yùn)算符

加減乘除

+,-,*,/,是我們最常見的運(yùn)算符,這些運(yùn)算符效果就是你想的那樣,只不過(guò)唯一要注意''號(hào),除號(hào)需要注意除數(shù)不能為0,并且如果涉及到小數(shù)計(jì)算建議使用double,因?yàn)樵谟?jì)算機(jī)語(yǔ)言之中1/2=0,因?yàn)?和2都是整形,結(jié)果也只會(huì)是整形。

模運(yùn)算

‘%'模運(yùn)算,起作用是求余數(shù)

int a = 5%2;

上面代碼中,a的值是1,因?yàn)?/2 == 2余1,所以a等于1.

增量賦值運(yùn)算符

增量賦值運(yùn)算符,+=,-=,*=,/=等等

和C語(yǔ)言之中的混合運(yùn)算符一樣

a+=3 <==>a = a+3;

并且在Java中,增量賦值會(huì)自帶強(qiáng)制類型轉(zhuǎn)換。

short a = 2;
int s = (int)a+2;//需要強(qiáng)制類型轉(zhuǎn)換
int b = 0;
b+=a;//不需要,因?yàn)橐呀?jīng)自動(dòng)轉(zhuǎn)換類型了

自增運(yùn)算符和自建運(yùn)算符

++和–,其等價(jià)于a+=1和a-=1;

自增運(yùn)算符分為前置和后置

舉個(gè)例子:

int a = 0;
int b = a++;
//等價(jià)于int b = a;a = a+1;
int c = --a;
//等價(jià)于 a = a-1;int b = a;

賦值運(yùn)算符

‘='就是賦值運(yùn)算符,其作用是將右邊的值賦給左邊

判斷運(yùn)算符

判斷運(yùn)算符有==,!=,<=,>=,<,>。

其為bool表達(dá)式,結(jié)果是bool類型的

int a = 0;
boolean c = false;
c = a==0;//a==0為真,c = true;
c = a!=0;//a==0為假,c = false;
c = a>0;//a>0為假,c = false;
c = a<0;//a<0為假,c = false;
c = a>=0;//a>=0為真,c = true;
c = a<=0;//a<=0為真,c = true;

邏輯判斷符

|| :邏輯或

表達(dá)式1||表達(dá)式2||表達(dá)式3……

從左向右判斷,如果有一個(gè)為真,則停止判斷返回真,否則返回假。

&& :邏輯與

表達(dá)式1&&表達(dá)式2&&表達(dá)式3……

從左向右判斷,如果有一個(gè)為假,則停止判斷返回假,否則返回假。

?。哼壿嬋》?/p>

!表達(dá)式1;

如果表達(dá)式1為真,返回false,如果表達(dá)式1為假,返回true。

注意:所有的表達(dá)式必須是bool表達(dá)式?。?!

按位運(yùn)算符

按位與&,按位或|,按位異或^,按位取反~

按位與,a&b,對(duì)于兩個(gè)數(shù)a和b,每一個(gè)二進(jìn)制位,如果均為1則對(duì)應(yīng)二進(jìn)制位也放1,否則放0
1101 & 0011 = 0001

按位或,a|b,對(duì)于兩個(gè)數(shù)a和b,每一個(gè)二進(jìn)制位,如果均為0則對(duì)應(yīng)二進(jìn)制位也放0,否則放0
1101 & 0011 = 1111

按位異或,a^b,對(duì)于兩個(gè)數(shù)a和b,每一個(gè)二進(jìn)制位,如果相同則為0,否則放1
1101 & 0011 = 1110

按位取反,~a,對(duì)于每一個(gè)二進(jìn)制位,除了符號(hào)位也就是第一位,其他所有的位1變0,0變1.
~1101 = 1010

移位運(yùn)算

左移<<,右移>>和無(wú)符號(hào)右移>>>

左移運(yùn)算符,將其二進(jìn)制位左移x個(gè)單位,不足的補(bǔ)0

0101 0101 << 2(左移兩位)

結(jié)果是01 010100

右移運(yùn)算符,將其二進(jìn)制位右移x個(gè)單位,不足的補(bǔ)符號(hào)位

1101 0101 >> 2(右移兩位)

結(jié)果是111101 01

無(wú)符號(hào)右移,將其二進(jìn)制位右移X個(gè)單位,不足的無(wú)論是負(fù)數(shù)也好正數(shù)也好全部補(bǔ)0

1101 0101 >>> 2(無(wú)符號(hào)右移兩位)

結(jié)果是001101 01

PS:沒(méi)有無(wú)符號(hào)左移

條件運(yùn)算符

條件運(yùn)算符就是三目運(yùn)算符

表達(dá)式1 ?表達(dá)式2:表達(dá)式3

表達(dá)式1,2,3必須是bool表達(dá)式

如果表達(dá)式1為真則返回表達(dá)式2,如果表達(dá)式1為假,返回表達(dá)式3.

運(yùn)算符優(yōu)先級(jí)

運(yùn)算符存在優(yōu)先級(jí),但是大多時(shí)候不必去深究,可以通過(guò)括號(hào)來(lái)先計(jì)算內(nèi)部的表達(dá)式,靈活運(yùn)用括號(hào)來(lái)防止運(yùn)算符優(yōu)先級(jí)造成的問(wèn)題。

“java數(shù)據(jù)類型與運(yùn)算符有哪些”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI