java基礎(chǔ)---------類(lèi)型轉(zhuǎn)換與運(yùn)算符

一、重點(diǎn)知識(shí)

1.1方法重載時(shí)參數(shù)列表順序不一樣也可

1.2char? 0-65535

算術(shù)運(yùn)算符中注意? /? ? %的區(qū)別,,,/是取商,%是取余

1.3注意三元運(yùn)算符后面的兩個(gè)表達(dá)式之間用 :鏈接

1.4注意i++先運(yùn)算再自增

舉例

int i = 5;

System.out.println("i++")? ? ? ? ? 結(jié)果為5

可見(jiàn)輸出時(shí)候也遵循此規(guī)律

注意運(yùn)算時(shí)候也是如此,先完成對(duì)應(yīng)運(yùn)算再自增,自增后的i與運(yùn)算再無(wú)關(guān)系,賦值也算運(yùn)算奧,別忘了,也是先賦值再自加

1.5關(guān)系運(yùn)算符的結(jié)果為布爾型

1.6遇到報(bào)錯(cuò),非法字符后面加unicode碼而且數(shù)字較大,說(shuō)明你可能有中文字符

1.7邏輯運(yùn)算符也不一定要用在選擇語(yǔ)句中,Boolean a = b && c && d;? ? ? 也是對(duì)的

1.8運(yùn)算符的優(yōu)先級(jí)為:算術(shù)運(yùn)算符,連接運(yùn)算符,關(guān)系運(yùn)算符,邏輯運(yùn)算符。

1.9一元運(yùn)算符意思是操作數(shù)就一個(gè)

2.0[10,99]隨機(jī)數(shù)? ? ? ? ? ? 公式:(int)(Math.random() * (99 - 10 + 1) + 10)

2.1只要前面有一個(gè)字符串,后面的加號(hào)都只起到連接作用? ? 沒(méi)遇到之前正常計(jì)算

2.2scanner會(huì)導(dǎo)致程序阻塞,只有完成輸入操作后,程序才能繼續(xù)執(zhí)行

2.3next().charAt(0)? ? 獲取單個(gè)字符

二、重點(diǎn)問(wèn)題

i++? 與? ++i

int a = 2;

System.out.println(a++);? ? ? ? ? ? 結(jié)果任然為2

System.out.println(++a);? ? ? ? ? ? 結(jié)果為3

也就意味著輸出操作中,i也是先輸出再自增一

三、本節(jié)內(nèi)容

3.1、運(yùn)算符

算術(shù)運(yùn)算符:+,-,*,/,%,++,--

/:兩個(gè)數(shù)相除,取商

%:兩個(gè)數(shù)相除,取余數(shù)

++:給變量自增1

i++:都是給i加1。i++的值還是當(dāng)i來(lái)算。

i++:先計(jì)算,再加1

++i:也是給i加1。++i的值相當(dāng)于加1之后

++i:先加1,再運(yùn)算

--:給變量自減1

都是給i進(jìn)行減1。

i--,值相當(dāng)于i本身。最終執(zhí)行之后給i減1。

先計(jì)算,再減1

--i,值相當(dāng)于i-1了。

先減1,再計(jì)算。

賦值運(yùn)算符:=,+=,-=,*=,/=,%=

=:將=右側(cè)的數(shù)據(jù),賦值給=左側(cè)的變量

+=:求和后再賦值:a += b;相當(dāng)于a = a + b

關(guān)系運(yùn)算符:也叫比較運(yùn)算符,比較兩個(gè)數(shù)值的關(guān)系的。計(jì)算結(jié)果是boolean類(lèi)型

<,>,<=,>=,==,!=

==,比較兩個(gè)數(shù)值,是否相等,如果相等,就是true,否則就是false。

!=,比較兩個(gè)數(shù)值,是否不等,如果不等,就是true,否則就是false。

邏輯運(yùn)算符:操作數(shù)是boolean類(lèi)型,計(jì)算結(jié)果也是boolean類(lèi)型。

&&:"與操作",表示并且的意思。

運(yùn)算規(guī)則:在參加計(jì)算的操作數(shù)中,如果都為true,結(jié)果就為true。有一個(gè)為false,結(jié)果就為false。

總結(jié):一假則假,全真才真。

||:"或操作",表示或者的意思。

運(yùn)算規(guī)則:在參加計(jì)算的操作數(shù)中,如果都為false,結(jié)果才為false,有一個(gè)為true,結(jié)果就為true。

總結(jié):一真則真,全假才假。

!:"取非、取反",一元的運(yùn)算符。

運(yùn)算規(guī)則:原來(lái)是true,取反后就是false,如果原來(lái)是false,取反后就是true

三元運(yùn)算符:根據(jù)條件獲取一個(gè)結(jié)果。

語(yǔ)法:X ? Y:Z

X是一個(gè)boolean類(lèi)型的表達(dá)式,如果值為true,整個(gè)三元運(yùn)算符取Y的值,否則取Z的值

3.2、表達(dá)式

表達(dá)式:操作數(shù)和運(yùn)算符組成一個(gè)式子。

表達(dá)式的值和類(lèi)型:將表達(dá)式進(jìn)行計(jì)算得到的結(jié)果就是表達(dá)式的值。

3.3自動(dòng)類(lèi)型提升

當(dāng)容量小的數(shù)據(jù)類(lèi)型的變量與容量大的數(shù)據(jù)類(lèi)型的變量做運(yùn)算時(shí),結(jié)果自動(dòng)提升為容量大的數(shù)據(jù)類(lèi)型。

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

特別的:當(dāng)byte、char、short三種類(lèi)型的變量做運(yùn)算時(shí),結(jié)果為int型

說(shuō)明:此時(shí)的容量大小指的是,表示數(shù)的范圍的大和小。比如:float容量要大于long的容量

3.4強(qiáng)制類(lèi)型轉(zhuǎn)換

(只涉及7種基本數(shù)據(jù)類(lèi)型):自動(dòng)類(lèi)型提升運(yùn)算的逆運(yùn)算。

1.需要使用強(qiáng)轉(zhuǎn)符:()

2.注意點(diǎn):強(qiáng)制類(lèi)型轉(zhuǎn)換,可能導(dǎo)致精度損失。

3.5 String與8種基本數(shù)據(jù)類(lèi)型間的運(yùn)算

1. String屬于引用數(shù)據(jù)類(lèi)型,翻譯為:字符串

2. 聲明String類(lèi)型變量時(shí),使用一對(duì)""

3. String可以和8種基本數(shù)據(jù)類(lèi)型變量做運(yùn)算,且運(yùn)算只能是連接運(yùn)算:+

4. 運(yùn)算的結(jié)果仍然是String類(lèi)型

3.6、控制臺(tái)輸入

讀取控制臺(tái)上輸入的數(shù)據(jù)。

//step1:導(dǎo)入Scanenr這個(gè)掃描器

import java.util.Scanner;

//step2:創(chuàng)建Scanner掃描器

Scannersc=newScanner(System.in);

//step3:使用sc調(diào)用對(duì)應(yīng)的方法,來(lái)讀取鍵盤(pán)的輸入

intnum1=sc.nextInt();//讀取一個(gè)int類(lèi)型的數(shù)據(jù)

doublenum2=sc.nextDouble();//讀取一個(gè)double類(lèi)型的數(shù)據(jù)

Stringstr=sc.next();//讀取一個(gè)String類(lèi)型的數(shù)據(jù)

charc=sc.next().charAt(0);//讀取一個(gè)char類(lèi)型的字符串

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀(guān)點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容