一怔毛、重點(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
可見輸出時(shí)候也遵循此規(guī)律
注意運(yùn)算時(shí)候也是如此宵喂,先完成對(duì)應(yīng)運(yùn)算再自增糠赦,自增后的i與運(yùn)算再無關(guān)系,賦值也算運(yùn)算奧锅棕,別忘了拙泽,也是先賦值再自加
1.5關(guān)系運(yùn)算符的結(jié)果為布爾型
1.6遇到報(bào)錯(cuò),非法字符后面加unicode碼而且數(shù)字較大裸燎,說明你可能有中文字符
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)都只起到連接作用? ? 沒遇到之前正常計(jì)算
2.2scanner會(huì)導(dǎo)致程序阻塞,只有完成輸入操作后个粱,程序才能繼續(xù)執(zhí)行
2.3next().charAt(0)? ? 獲取單個(gè)字符
二古毛、重點(diǎ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來算骂铁。
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類型
<,>,<=,>=,==,!=
==押搪,比較兩個(gè)數(shù)值,是否相等浅碾,如果相等大州,就是true,否則就是false垂谢。
!=厦画,比較兩個(gè)數(shù)值,是否不等埂陆,如果不等苛白,就是true,否則就是false焚虱。
邏輯運(yùn)算符:操作數(shù)是boolean類型购裙,計(jì)算結(jié)果也是boolean類型。
&&:"與操作"鹃栽,表示并且的意思躏率。
運(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ī)則:原來是true,取反后就是false赫粥,如果原來是false观话,取反后就是true
三元運(yùn)算符:根據(jù)條件獲取一個(gè)結(jié)果。
語(yǔ)法:X 越平? Y:Z
X是一個(gè)boolean類型的表達(dá)式频蛔,如果值為true,整個(gè)三元運(yùn)算符取Y的值秦叛,否則取Z的值
3.2晦溪、表達(dá)式
表達(dá)式:操作數(shù)和運(yùn)算符組成一個(gè)式子。
表達(dá)式的值和類型:將表達(dá)式進(jìn)行計(jì)算得到的結(jié)果就是表達(dá)式的值挣跋。
3.3自動(dòng)類型提升
當(dāng)容量小的數(shù)據(jù)類型的變量與容量大的數(shù)據(jù)類型的變量做運(yùn)算時(shí)三圆,結(jié)果自動(dòng)提升為容量大的數(shù)據(jù)類型。
byte 避咆、char 舟肉、short --> int --> long --> float --> double
特別的:當(dāng)byte、char查库、short三種類型的變量做運(yùn)算時(shí)路媚,結(jié)果為int型
說明:此時(shí)的容量大小指的是,表示數(shù)的范圍的大和小樊销。比如:float容量要大于long的容量
3.4強(qiáng)制類型轉(zhuǎn)換
(只涉及7種基本數(shù)據(jù)類型):自動(dòng)類型提升運(yùn)算的逆運(yùn)算整慎。
1.需要使用強(qiáng)轉(zhuǎn)符:()
2.注意點(diǎn):強(qiáng)制類型轉(zhuǎn)換,可能導(dǎo)致精度損失围苫。
3.5 String與8種基本數(shù)據(jù)類型間的運(yùn)算
1. String屬于引用數(shù)據(jù)類型,翻譯為:字符串
2. 聲明String類型變量時(shí)裤园,使用一對(duì)""
3. String可以和8種基本數(shù)據(jù)類型變量做運(yùn)算,且運(yùn)算只能是連接運(yùn)算:+
4. 運(yùn)算的結(jié)果仍然是String類型
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)的方法,來讀取鍵盤的輸入
intnum1=sc.nextInt();//讀取一個(gè)int類型的數(shù)據(jù)
doublenum2=sc.nextDouble();//讀取一個(gè)double類型的數(shù)據(jù)
Stringstr=sc.next();//讀取一個(gè)String類型的數(shù)據(jù)
charc=sc.next().charAt(0);//讀取一個(gè)char類型的字符串