Java數(shù)據(jù)類型與運(yùn)算符詳細(xì)代碼示例
摘要:
本文介紹了Java標(biāo)識(shí)符的命名規(guī)則(必須遵守)和規(guī)范(推薦遵守),包括字符組成、大小寫敏感等要求。詳細(xì)講解了基本數(shù)據(jù)類型和引用數(shù)據(jù)類型的區(qū)別,以及類型轉(zhuǎn)換的兩種方式。同時(shí)闡述了算術(shù)、賦值、關(guān)系、邏輯等運(yùn)算符的使用方法,特別強(qiáng)調(diào)了整數(shù)除法的特點(diǎn)和運(yùn)算符優(yōu)先級(jí)問題。最后總結(jié)了類型存儲(chǔ)方式、轉(zhuǎn)換注意事項(xiàng)和比較運(yùn)算符的使用要點(diǎn)。
標(biāo)識(shí)符的基本介紹
首先 讓我們來認(rèn)識(shí)一下什么是標(biāo)識(shí)符?
在Java中 標(biāo)識(shí)符是用來給類 方法 變量 常量等元素命名的字符序列 理解標(biāo)識(shí)符的規(guī)則和規(guī)范 是編寫合法 可讀Java代碼的基礎(chǔ)
一 、標(biāo)識(shí)符的命名規(guī)則 (必須遵守)
下述規(guī)則由Java語言規(guī)范強(qiáng)制執(zhí)行 若沒有遵守則會(huì)導(dǎo)致編譯報(bào)錯(cuò)的情況發(fā)生
1、字符組成 只能由字母、數(shù)字、數(shù)字、下劃線、以及美元符號(hào)組成
2、首字母必須以字母、下劃線或美元符號(hào)開頭 錯(cuò)誤示范123abc
3、大小寫敏感 例如demo01 和Demo01 是不同的標(biāo)識(shí)符
4、不能使用關(guān)鍵字 如class、public、static等…作為標(biāo)識(shí)符
二、標(biāo)識(shí)符的命名規(guī)范(推薦遵守)
下述內(nèi)容屬于是行業(yè)規(guī)范 不遵守并不會(huì)導(dǎo)致編譯報(bào)錯(cuò)的情況出現(xiàn) 但是會(huì)大大影響我們代碼的可讀性
1、類名與接口名
大駝峰式 每個(gè)單詞的首字母都使用大寫 如StudentManager , HttpServlet , ArrayList等
2、方法名與變量
小駝峰式 首字母采用小寫 后續(xù)單詞的首字母大寫 如 userName , maxValue等
3、常量
采用單詞全字母大寫+下劃線的形式 如 MAX_SIZE
4、包名
全字母小寫 用點(diǎn)號(hào)分隔 如com.company.project
5、見名知意
使用有意義的單詞作為變量名 例如student index等
數(shù)據(jù)類型與運(yùn)算符
數(shù)據(jù)類型(基本數(shù)據(jù)類型和引用數(shù)據(jù)類型)
Java 是強(qiáng)類型語言,每個(gè)變量都必須聲明其數(shù)據(jù)類型。
一、基本數(shù)據(jù)類型(值直接儲(chǔ)存在棧上)
byte 字節(jié)型 取值范圍-128~127
short 短整型 取值范圍-32768 ~ 32767
int 整形
long長(zhǎng)整型 一般用于接收一些非常大的數(shù)字
float 單精度浮點(diǎn)型
double 雙精度浮點(diǎn)型
char 字符型
boolean 布爾型
二、引用數(shù)據(jù)類型(儲(chǔ)存對(duì)象的地址)
類(Class)如 String , Object , 自定義類
接口(Interface)
數(shù)組(Array)如 int[] , String[]
枚舉(Enum)
三、類型轉(zhuǎn)換
1.自動(dòng)類型轉(zhuǎn)換(隱式) 低精度?高精度
int a = 0; double b = a; System.out.print(b);//b==1.0
2.強(qiáng)制類型轉(zhuǎn)換(顯式) 高精度?低精度
double x=3.1415926; int y=(int)x; System.out,print(y);//y==3
倆種類型轉(zhuǎn)換的區(qū)別!??!
1.從代碼層面上來看自動(dòng)類型轉(zhuǎn)換不需要指定轉(zhuǎn)換的類型 強(qiáng)制類型轉(zhuǎn)換 則需要指定轉(zhuǎn)換的類型
2. 高精度轉(zhuǎn)向低精度 可能會(huì)導(dǎo)致精度丟失的情況
運(yùn)算符(大部分內(nèi)容都與數(shù)學(xué)中的運(yùn)算規(guī)則相同)
1.算術(shù)運(yùn)算符
+ - * +還具備拼接字符串的作用
/ vs % 前者為除 后者為取余
當(dāng)我們?cè)谑褂?code>/進(jìn)行整數(shù)相除時(shí) 若不能整除 結(jié)果并不會(huì)保留小數(shù) 而是會(huì)直接舍棄
++ -- 自增 或 自減
注意: ++i 先自增再使用, i++ 則是先使用再自增 (自減也是類同)
int i=10; int a=i++;//a==10 i==11 int b=++i;//i==12 b==12
2.賦值運(yùn)算符(簡(jiǎn)單介紹)
| 運(yùn)算符 | 等價(jià)于 |
|---|---|
= | a=b |
+= | a = a + b |
-= | a = a - b |
*= | a = a * b |
/= | a = a / b |
%= | a = a % b |
3.關(guān)系運(yùn)算符
| 運(yùn)算符 | 注解 | 案例 |
|---|---|---|
== | 等于 | a==b |
!= | 不等于 | a != b |
> | 大于 | a > b |
< | 小于 | a < b |
>= | 大于等于 | a >= b |
<= | 小于等于 | a <= b |
注意:基本類型比較的是值,引用類型比較的是地址!?。?/strong>
4. 邏輯運(yùn)算符
| 運(yùn)算符 | 說明 | 案例 | 特點(diǎn) |
|---|---|---|---|
&& | `短路與 | a > 0 && b < 10 | 當(dāng)?shù)谝粋€(gè)表達(dá)式false時(shí)不再計(jì)算第二個(gè) |
& | 邏輯與(非短路) | a & b | 兩個(gè)都計(jì)算 |
^ | 異或 | a ^ b | 不同為true 相同為false, |
! | 非 | !(a>b) | 取反 |
5.三元運(yùn)算符
int max = (a > b) ? a : b; /*如果a大于b則將a的值賦給max 否則將b的值賦給max*/
注意:運(yùn)算符的優(yōu)先級(jí)
運(yùn)算符的優(yōu)先級(jí)較為復(fù)雜 為了避免記錯(cuò)了的可能 以及提高代碼的可讀性 我們可以使用()明確運(yùn)算順序
int a = (x+y)/z;
總結(jié)要點(diǎn)
- 基本類型
vs引用類型:內(nèi)存存儲(chǔ)方式不同,傳遞方式不同 - 類型轉(zhuǎn)換:自動(dòng)轉(zhuǎn)換安全,強(qiáng)制轉(zhuǎn)換需謹(jǐn)慎
- 運(yùn)算符優(yōu)先級(jí):不確定時(shí)建議多使用括號(hào) 既避免了記憶出錯(cuò)的可能 同時(shí)也提高了代碼的可讀性
- 整數(shù)除法:兩個(gè)整數(shù)相除結(jié)果還是整數(shù) 會(huì)忽略小數(shù)
- ==:==比較的是對(duì)象的內(nèi)存地址 比較對(duì)象時(shí)應(yīng)使用 equals()方法而非 ==
到此這篇關(guān)于Java數(shù)據(jù)類型與運(yùn)算符的文章就介紹到這了,更多相關(guān)Java數(shù)據(jù)類型與運(yùn)算符內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java刪除ArrayList中的重復(fù)元素的兩種方法
在Java編程中,ArrayList是一種常用的集合類,它允許我們存儲(chǔ)一組元素,在某些情況下,我們可能需要移除其中重復(fù)的元素,只保留唯一的元素,下面介紹兩種常見的刪除ArrayList中重復(fù)元素的方法,需要的朋友可以參考下2024-12-12
springboot starter自定義實(shí)現(xiàn)公共模塊方式
這篇文章主要介紹了springboot starter自定義實(shí)現(xiàn)公共模塊方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-08-08
淺談Java中SimpleDateFormat 多線程不安全原因
SimpleDateFormat是Java中用于日期時(shí)間格式化的一個(gè)類,本文主要介紹了淺談Java中SimpleDateFormat 多線程不安全原因,感興趣的可以了解一下2024-01-01
JAVA-NIO之Socket/ServerSocket Channel(詳解)
下面小編就為大家?guī)硪黄狫AVA-NIO之Socket/ServerSocket Channel(詳解)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-06-06
java Collection 之List學(xué)習(xí)介紹
本篇文章小編為大家介紹,java Collection 之List學(xué)習(xí)介紹。需要的朋友參考下2013-04-04

