教育路上
摘要:第2章Java入門,轉義字符,java定義變量的格式。以下是我們為大家整理的,相信大家閱讀完后肯定有了自己的選擇吧。
2023-02-16 17:02網絡推薦
轉義字符:
在輸出當中\n代表換行
\\n表示不轉義,輸出\n
想要輸出“”必須在引號前加\
java定義變量的格式:數據類型 變量名=變量值;
變量符號:
定義整型變量:int、byte、short、long
定義浮點型:float、double
定義字符型:char
定義布爾型:boolean(只能賦值為true或者false)
定義類:class
定義接口:interface
定義數組:[]
定義long類型變量,必須以"l"或"L"結尾
定義float類型變量時,變量要以"f"或"F"結尾
命名規定
可以由:字母,數字,_,$組成,但不能以數字開頭
不能與關鍵字,保留字重名
不能包含空格
約定俗成:
望文生義,見名知義
類名由一個或多個單詞組成,每個單詞首字母大寫(大駝峰)
函數名,變量名由一個或多個單詞組成,首單詞首字母小寫,拼接詞首字母大寫(小駝峰)
包名全小寫,只可以使用特殊字符"“并且不以”"開頭或結尾
常量全大寫,多個單詞之間有下劃線_分隔
變量
程序運行過程中我們經常需要用一個東西來臨時計算過程中的數據,這個東西就是變量。
在程序運行的過程中,變量的值可以再一定范圍內變化
定義格式
1光定義,不賦值
格式:數據類型 變量名;
int num;//光定義一個int類型的變量num,但是還沒有進行賦值
2定義并賦值
格式:數據類型 變量名 = 初始化值;
int num = 1024;
注意事項
1變量有其作用范圍,它的作用訪問是定義他的那行代碼所在的大括號內。
2在同一個大括號中定義的變量名不能重復。
3變量在使用之前,必須先初始化(賦值)。
4定義long類型的變量時,需要在整數的后面加L(大小寫均可,建議大寫)。因為整數默認是int類型,加L相當于告訴計算機這個整數很特殊是long類型的。定義float類型的變量時,需要在小數的后面加F(大小寫均可,建議大寫)。因為浮點數的默認類型是double, 加F相當于告訴計算機這個小數很特殊是float類型的
數據類型
基本數據類型:包括 整數、浮點數、字符、布爾。
引用數據類型:包括 類、數組、接口,枚舉,注解
除了8種基本數據類型外,都屬于引用數據類型
整形
類型 字節 取值范圍(二進制) 取值范圍(十進制)
byte 1字節 -2 ^ 7~2 ^7-1 -128~127
short 2字節 -2^15 ~2 ^15-1 -32768~32767
int 4字節 -2^31~2 ^31-1
long 8字節 -2^63 ~2 ^63-1
Java中的默認類型:整數類型是int 、浮點類型是double
浮點型
類型 字節 取值范圍 取值范圍
float 4字節
double 8字節
long類型:建議數據后加L表示。
float類型:數據后必須加F或者f表示。
基本數據類型(8種):byte、short、int、long、float、double、char、boolean
引用數據類型:類、數組、接口,枚舉,注解
byte中最大值為127最小值為-128,整數類型不能是小數。
float類型后面數值必須跟f同理long類型后面必須跟l因為在java中默認的整數為int,小數為double
算術表達式中包含不同的基本數據類型的值的時候,整個算術表達式的類型會自動進行提升。
提升規則:
byte類型,short類型和char類型將被提升到int類型,不管是否有其他類型參與運算。
boolean類型不能與其它數據類型運算
當把任何基本數據類型的值和字符串(String)進行連接運算時(+),基本數據類型的值將自動轉化為字符串(String)類型。
整個表達式的類型自動提升到與表達式中最高等級的操作數相同的類型
等級順序:byte,short,char --> int --> long --> ?oat --> double-->string
分析
public static void main(String[] args){
byte b1=1;
byte b2=2;
byte b3=1 + 2;
byte b4=b1 + b2;
Systemoutprintln(b3);
Systemoutprintln(b4);
}
分析:b3 = 1 + 2 ,1和 2 是常量,為固定不變的數據,在編譯的時候(編譯器javac),已經確定了1+2 的結果并沒有超過byte類型的取值范圍,可以賦值給變量b3 ,因此b3=1 + 2是正確的。
反之,b4 = b2 + b3,b2 和 b3 是變量,變量的值是可能變化的,在編譯的時候,編譯器javac不確定b2+b3的結果是什么,因此會將結果以int類型進行處理,所以int類型不能賦值給byte類型,因此編譯失敗
自動類型轉換
自動類型轉換:低級別–>高級別
強制類型轉換:高級別–>低級別
將取值范圍小的類型自動提升為取值范圍大的類型
數據絕對安全的類型轉換是可以自動轉換的直接書寫即可
double num = 1024;// int -> double 安全
long l = 1024;//int -> long 安全
double num2 = 314F;//float -> double
強制類型轉換
強制類型轉換:高級別–>低級別
將取值范圍大的類型強制轉換成取值范圍小的類型
轉換后可能導致出現問題(數據溢出,丟失數據精度)的類型轉換叫做強制類型轉換。因為可能出現問題必須給計算機一個特殊標識,格式如下:
目標數據類型 變量名 = (目標數據類型)值或者變量;
算術運行符
其實就是常見的數學運行符,不過有些地方有點不同
符號 作用 不同之處
+ 加 單純使用數字參與運算的時候和數學中的+沒有不同
- 減 無
* 乘 無
/ 除 整數相除只能得到整數,如果想得到小數必須使用小數參與計算 例如: int num = 10/3; //num的值為3而不會是3333
% 取余 獲取的是兩個數據做整除后得到的余數 int num = 10%3;
對于除號“/”,它的整數除和小數除是有區別的:整數之間做除法時,只保留整數部分而舍棄小數部分
如果字符參與了運算:
char類型參與算術運算,會把字符轉換成對應的數字(參照 ASCII 碼表)然后參與運算。
char c = 'A';
Systemoutprintln(c+0); //65
如果字符串參與了+運算:
當“+”操作中出現字符串時,這個”+”是會進行字符串的拼接,而不會進行數據的計算
Systemoutprintln("dyk"+123+"666"); //dyk123666
1
判斷下面代碼的執行結果
Systemoutprintln('a'+10+"bc"+'d'+10);//107bcd10
1
Java中,整數使用以上運算符,無論怎么計算,也不會得到小數
public static void main(String[] args) {
int i = 123456;
Systemoutprintln(i/1000*1000);//計算結果是123000
}
賦值運算符
可以用來修改變量的值。賦值運行符左邊寫要被修改值的變量名,右邊寫參與計算的值,這個值可以是具體的值也可以是變量。
符號 功能 舉例
= 賦值 a=10,將10賦值給變量a
+= 加后賦值 a+=10; //相當于a =(a的數據類型) (a + 10);
-= 減后賦值 a-=b;//相當于a =(a的數據類型) (a - b);
*= 乘后賦值 a*=b;//相當于a =(a的數據類型) (a * b);
/= 除后賦值 a/=b;//相當于a =(a的數據類型) (a / b);
%= 取余后賦值 a%=b;//相當于a =(a的數據類型) (a % b);
public static void main(String[] args){
short s = 1;
s+=1;
Systemoutprintln(s);
}
分析: s += 1 邏輯上看作是s = s + 1 計算結果被提升為int類型,再向short類型賦值時發生錯誤,因為不能將取值范圍大的類型賦值到取值范圍小的類型。但是,s=s+1進行兩次運算,+= 是一個運算符,只運算一次,并帶有強制轉換的特點,也就是說s += 1 就是s = (short)(s + 1),因此程序沒有問題編譯通過,運行結果是2。
因此,這里要說一點的是,賦值運算符默認進行了強制類型轉換
邏輯運算符
符號 作用 說明
& 邏輯與 理解成并且的意思,左右兩邊都要為真才為真
| 邏輯或 理解成或者的意思,左右兩邊只要有一個為真就為真
^ 邏輯異或 左右兩邊不同結果才為真
! 邏輯非 取反
&& 短路與 作用和&相同,但是有短路效果
|| 短路或 作用和|相同,但是有短路效果
短路效果:左邊表達式的結果確定之后,如果整個表達式的結果已經被確定了,就不會去執行右邊的表達式
& 不管前面是不是false都會執行后面
&& 如果前面是false就不會再執行后面的
邏輯與&,無論左邊真假,右邊都要執行。
短路與&&,如果左邊為真,右邊執行;如果左邊為假,右邊不執行。
邏輯或|,無論左邊真假,右邊都要執行。
短路或||,如果左邊為假,右邊執行;如果左邊為真,右邊不執行
public static void main(String[] args) {
int x = 3?
int y = 4?
Systemoutprintln((x++ > 4) & (y++ > 5))? // 兩個表達都會運算
Systemoutprintln(x)? // 4
Systemoutprintln(y)? // 5
Systemoutprintln((x++ > 4) && (y++ > 5))? // 左邊結果為false,右邊不參與運算
Systemoutprintln(x)? // 4
Systemoutprintln(y)? // 4
}
自增自減運算符
符號 作用 舉例
++ 自增 a++;//相當于a = a+1;
– 自減 a–;//相當于a = a - 1;
注意:
++和–可以寫在變量的前面也可以寫在變量的后面,單獨寫的時候寫前面寫后面都沒有區別區別就在和其它運算符一起寫
++寫在變量前的時候先自增然后再參與其他運算
++寫在變量后面的時候先參與其它運算后自增
++和-- 既可以放在變量的后邊,也可以放在變量的前邊。
單獨使用的時候, ++和-- 無論是放在變量的前邊還是后邊,結果是一樣的。
參與操作的時候,如果放在變量的后邊,先拿變量參與操作,后拿變量做++或者--。
參與操作的時候,如果放在變量的前邊,先拿變量做++或者--,后拿變量參與操作
int a = 5;
int c = 10;
int b = 20;
int d = ++a+b+++c+++(a+b);
Systemoutprintln(d);//63
訪客的評論 2023/11/08 20:54
文中描述的是準確的嗎,如何報名!