java數(shù)據(jù)類型與變量的安全性介紹
一、標(biāo)識符
在java中規(guī)定標(biāo)識符中只能包含:字母,數(shù)字及下劃線和$ 符號,但不能以數(shù)字開頭,嚴(yán)格區(qū)分大小寫.
參考標(biāo)準(zhǔn)當(dāng)中的規(guī)定:
1.類名:大駝峰,每個單詞首字母大寫(HelloWorld)
2.方法名:小駝峰,從第二個單詞開始每個單詞首字母大寫(helloWorld)
3.變量名:小駝峰
不合法標(biāo)識符如下(示例):
- 1.public(關(guān)鍵字)
- 2.520shy(數(shù)字開頭)
- 3.zhao.d(出現(xiàn)陌生符號)
二、數(shù)據(jù)類型
java當(dāng)中的整型與浮點(diǎn)數(shù)都是嚴(yán)格帶有符號位

java中有8種基本數(shù)據(jù)類型
如下(示例):

大家特別應(yīng)該注意:
1.在java種字符型占2字節(jié),因為在C語言種使用的是ASCII編碼,java種使用的是unicode編碼方式.
2.不論是在x64,x86環(huán)境下,int都占用4字節(jié),long占用8字節(jié).
三、變量
因為Java是一門安全性十分高的語言,在我們?nèi)腴T的時候,會犯各種各樣的小錯誤,讓我們一起來探究一下吧.
1.無初始化
public static void main(String[] args) {
int a;
System.out.println(a);
}
在java當(dāng)中,局部變量未進(jìn)行初始化,系統(tǒng)會編譯錯誤.
解決方案:
1.初始化
2.賦值
public static void main(String[] args) {
int a;
a=10;//1.賦值
System.out.println(a);
int b=10;//2.初始化
System.out.println(b);
}
2.賦值超出范圍
public static void main(String[] args) {
int a=2147483648;
System.out.println(a);
}
在這里我們探討一下整數(shù)的范圍:因為java的數(shù)據(jù)是具有符號位的.

在這里我們使用Java的包裝類進(jìn)行計算:


我們可以看到在最上面的程序中賦值超過了Int的范圍,所以編譯的時候會報錯.
3.long與float的使用
在java中默認(rèn)整型為int型,浮點(diǎn)型默認(rèn)為double

有以下規(guī)定:
- 1.在定義float類型時在數(shù)據(jù)后面加一個f
- 2.在定義long類型時在數(shù)據(jù)后面加一個L
public static void main(String[] args) {
float a=3.5f;
long b=10L;
}4.除法的使用
public static void main(String[] args) {
int a=3;
int b=2;
System.out.println(a/b);
}這里會輸出1.5嗎?

在Java中,int值只能保存整數(shù)部分,不管小數(shù)多少,直接舍棄
解決方案:
public static void main(String[] args) {
int a=3;
int b=2;
System.out.println(a*1.0/b);
double c=3.0;
double d=2.0;
System.out.println(c/d);
}
5.浮點(diǎn)數(shù)的精度問題
public static void main(String[] args) {
double ret=1.1;
System.out.println(ret*ret);
}
因為浮點(diǎn)數(shù)在內(nèi)存中的存儲問題,double類型的內(nèi)存遵守IEEE 754標(biāo)準(zhǔn),因為在存儲時會有一定的精度誤差,所以浮點(diǎn)數(shù)并不是一個準(zhǔn)確值,而是一個近似值.
6.boolean類型變量的使用
public static void main(String[] args) {
double ret=1.1;
System.out.println(ret*ret);
}
在Java中不存在0表示假,1表示真的說法.
boolean類型的變量只有兩種取值,true表示真,false表示假
7.類型提升
情況1:
public static void main(String[] args) {
int a=2;
long b=3L;
int c=a+b;
}
int與long進(jìn)行計算時,會把int轉(zhuǎn)換成long,所以存放給int時會報錯.
情況2:
public static void main(String[] args) {
short a=10;
short b=20;
short c=a+b;
}
原因如下:a和b都是short,在運(yùn)算過程中會把a(bǔ),b都提升為Int在計算.
CPU通常是按照4個字節(jié)從內(nèi)存中讀寫數(shù)據(jù),為了實現(xiàn)方便,所以低于4字節(jié)的類型,會先提升為Int,在計算.
四、初始字符串
在java中引入了一種新的數(shù)據(jù)類型:字符串類型.
public static void main(String[] args) {
String s1="woyao";
String s2="jindachang";
System.out.println(s1+s2);
}
到此這篇關(guān)于java數(shù)據(jù)類型與變量的安全性介紹的文章就介紹到這了,更多相關(guān)java數(shù)據(jù)類型 內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
SpringBoot參數(shù)校驗的最佳實戰(zhàn)教程
開發(fā)過程中,后臺的參數(shù)校驗是必不可少的,下面這篇文章主要給大家介紹了關(guān)于SpringBoot參數(shù)校驗的最佳實戰(zhàn),文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下2021-08-08
使用Java的方式模擬Flutter的Widget實現(xiàn)多層括號嵌套
這篇文章主要介紹了使用Java的方式模擬Flutter的Widget的實現(xiàn)多層括號嵌套問題,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下2019-07-07
Java編程實現(xiàn)的二維數(shù)組轉(zhuǎn)置功能示例
這篇文章主要介紹了Java編程實現(xiàn)的二維數(shù)組轉(zhuǎn)置功能,結(jié)合實例形式分析了Java二維數(shù)組的遍歷、運(yùn)算、賦值等實現(xiàn)轉(zhuǎn)置的相關(guān)操作技巧,需要的朋友可以參考下2018-01-01
Java throw Exception實現(xiàn)異常轉(zhuǎn)換
這篇文章主要介紹了Java throw Exception實現(xiàn)異常轉(zhuǎn)換,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-04-04
Java運(yùn)行Python腳本的幾種方式小結(jié)
在跨語言編程中,有時候我們需要在 Java 應(yīng)用程序中執(zhí)行 Python 腳本,這可能是為了利用 Python 豐富的庫生態(tài)系統(tǒng),或者是為了在已有 Java 系統(tǒng)中集成一些 Python 特有的功能,本文給大家介紹了實現(xiàn)這幾種目標(biāo)的方法,需要的朋友可以參考下2024-12-12

