練習一下常量的操作
public class ConstantDemo { public static void main(String[] args) { // 字符串常量 System.out.println("今天是一個好天氣"); System.out.println("abcd"); System.out.println("1234"); System.out.println("");//不是null 字符串兩個雙引號中間內容為空 // 整數常量 System.out.println(22); System.out.println(18); System.out.println(500); System.out.println(1000); System.out.println(-1000); // 浮點數常量 System.out.println(1000.0); System.out.println(3.14); System.out.println(1.75); System.out.println(-3.14); // 字符常量 System.out.println('張'); System.out.println('三'); System.out.println('男'); System.out.println('A'); // 布爾常量 System.out.println(true); System.out.println(false); // 空常量 System.out.println("null"); System.out.println(null); } }
練習數據類型之間的轉換
自動類型轉換
1.特點:不需要通過代碼進行處理,程序內部轉換自動完成。
2.規則:從數據范圍小的轉換為數據范圍大的。
public class DataTypeDemo01 { public static void main(String[] args) { // 拿int類型的變量和byte類型的變量做運算 加法 byte num01 = 12;//----》 int int num02 = 14; int num3 = num01 + num02;//int 26雖然沒有超出byte的取值范圍,但是26在內存中此時的數據類型為int類型。 // 拿int類型和double類型的變量做運算 int num04 = 124; double num05 = 123.5; // 做相加運算 double num06 = num04+num05; } }
練習強制類型轉換
強制類型轉換:
2.格式:范圍小的數據類型 范圍小的變量名 = (范圍小的數據類型)原來范圍大的數據;
1.一般不推薦使用,因為可能會發生精度損失,數據溢出
2.byte/short/char這三種數據類型在運算的時候,都會被首先提升為int類型,然后再計算。
3.boolean類型不能發生數據類型轉換
4.char類型可以進行數學運算,例如:加法"+"
public class DataTypeDemo02 { public static void main(String[] args) { // 拿一個浮點數的值賦值給一個int類型的變量 int a = (int)3.14; System.out.println(a); // 拿一個long類型的數據賦值給int類型的變量 int b = (int)123L; System.out.println(b); // 拿一個超過int類型的數據賦值給int類型的變量 int c = (int)123456789123L; System.out.println(c); // 定義兩個byte類型的變量 byte num01 = 10; byte num02 = 20; // 如果等號右邊是兩個常量在相加,程序內部會優化為一個常量再賦值。 byte num03 = 10 + 20;// 相加運算 byte num04 = 10 + num01 + 20;// 相加運算 // byte num03 = 30; System.out.println(num04); } }
練習ASCII編碼表
public class DataTypeDemo03 { public static void main(String[] args) { char a = 'a';// 字符a---》97 System.out.println(a); int num1 = 1; int num2 = a + num1; System.out.println(num2);// 98 char ch = '一'; int num3 = ch;// 自動類型轉換 System.out.println(num3);// 24352 36213 29579 19968 char z = 'z'; int result = z + 10; System.out.println(result);// 132 } }
算術運算符
運算符:在程序中能夠進行特定操作的符號。例如:* %
表達式:使用運算符連接起來的式子叫做表達式,例如: 3+5 5%3
除法運算:
/ 求商數 5 / 3 = 1
% 取模(取余數) 5 % 3 = 2
備注:對於整數的表達式來說,除法用的是整除,求的是商數,不看余數,結果任然是整數
一旦運算中出現了不同的數據類型,那么結果將會是數據類型范圍大的那種。
++ 自增運算符 加1
-- 自減運算符 減1
使用方式:
1. 變量寫在運算符的左邊或者右邊
2. 單獨使用
3. 混合使用
區別:
1.單獨使用,前++和后++沒有區別 ++a和a++
2.混合使用,有區別。
a. 如果是前++,那么變量會立馬自增1,然后再進行其他運算【先加后用】
b. 如果是后++,那么首先使用原來的數值,然后再自增1運算【先用后加】
備注:對於自增和自減運算不能使用到常量身上,只有變量可以使用。
public class OperatorDemo01 { public static void main(String[] args) { int a = 123; double b = 12; double c = a / b;// double System.out.println(c); int d = 10; d++; System.out.println(d); System.out.println(10++); } }
賦值運算符
public class OperatorDemo02 { public static void main(String[] args) { //System.out.println(10=20); byte num01 = 10; byte num02 = 20; // += // num02+num01--->int 等價於 num02 = num02 + num01; //num02 = num02 + num01; num02 += num01; System.out.println(num02); } }
練習邏輯運算符
與 &
或 |
非 !
異或 ^
public class OperatorLogicDemo04 { public static void main(String[] args) { // & 與邏輯運算符 System.out.println(true & false);// false System.out.println(10 < 20 & 10 != 20);// true // 一個null的值被調用了 String str = null; // null == null str.equals(null) boolean boo = 10 > 20;// true //javac 編譯時期只校驗語法是否合法 //java 在程序運行時期,才能檢測到值的內容是否合法 // && 只有當連接的左邊值為false的時候,才能起到短路作用 System.out.println( boo && str.equals("null"));//false System.out.println("===================="); // | 或邏輯運算符 boolean flag = false; // || 只有當連接的左邊值為true的時候,才能起到短路作用 System.out.println( !flag || str.equals("null"));//false System.out.println("===================="); // ! 取非邏輯運算符 System.out.println(!flag);// true System.out.println("===================="); // ^ 異或邏輯運算符 System.out.println(true ^ false);// true System.out.println(true ^ true);// false System.out.println(false ^ true);// true System.out.println(false ^ false);// false } }
練習下String字符串
注意: 基本數據類型都是小寫字母 而字符串首字母是大寫的Stringpublic class StringDemo { public static void main(String[] args) { // String 字符串 數據類型 // 引用數據類型----》String String name = "張三"; String address = "鄭州"; // println() print()打印 ln--->換行 System.out.print(name); System.out.print(address + "\n");// 轉義字符 \n // + --->可以進行字符串的拼接 System.out.println(name + address); } }
練習變量的定義和使用
格式:
變量的數據類型 變量名 = 數據值;
拆分兩步:
變量的數據類型 變量名;// 創建了一個變量
變量名 = 數據值;// 賦值,將右邊的數據值,賦值給左邊的變量。
兩步合一步:
變量的數據類型 變量名 = 數據值;//創建了一個變量,同時將右邊的數據值,賦值給左邊的變量
public class VariableDemo { public static void main(String[] args) { // 創建一個變量 // 格式:數據類型 變量名; int age; // 向變量中存入一個數據 // 格式:變量名 = 數據值; age = 22; // 把該變量的內容在控制台中打印輸出 System.out.println(age); // 當在程序匯總打印變量時,顯示的是變量中存儲的數據值。 // 改變變量當中原來的數據值22,變成新的數據值32 age = 32; System.out.println(age); byte score = 60; System.out.println(score); // 注意:右側的數據的范圍不能超過左側數據類型的取值范圍。 score = 127; System.out.println(score); // 定義一個short類型的變量 short salary = 10000; // 定義一個長整型的數,需要在整數的后面添加字母L/l long phone = 18838894388L; System.out.println(phone); // 定義浮點型數值 需要在浮點數的后面添加字母F/f float height = 1.75F; System.out.println(height); double weight = 73.5; System.out.println(weight); // 定義一個字符型的變量 char sex = '男'; System.out.println(sex); // 定義一個布爾類型的變量 boolean flag = false; System.out.println(flag); } }
定義變量需要注意事項
使用變量的時候,需要注意的事項如下:
1.創建多個變量的時候,變量之間的名稱不可以重復;
2.對於float和long類型來說,變量的數據值后面需要添加字母F和L
3.如果使用byte或者是short類型的變量,那么右側的數據值不能超過左側類型的范圍。
4.沒有進行賦值的變量,不能直接使用,能夠使用的變量一定是經過初始化(賦值)。
5.變量的使用不能超出它對應的作用域。
6.可以通過一個語句來創建多個變量,但是不建議使用。
作用域---->{} 左半部分{ 代表作用域的起始位置
右半部分} 代表作用域的結束位
public class VariableNoticeDemo { public static void main(String[] args) { // 定義多個變量 int num01 = 123; num01 = 124; System.out.println(num01); System.out.println(num01); int num02 = 20; // 定義float和long類型的變量 float height = 1.75f; System.out.println(height); long phone = 123345456789L; System.out.println(phone); // 定義兩個byte類型的變量 byte num1 = 127; byte num2 = 1; byte num3 = 126 + 1;// System.out.println(num3); // 定義一個變量,未經過賦值 int score; score = 60; System.out.println(score); // 變量的使用不能超出它對應的作用域。 { int wage = 600; System.out.println(wage); } //System.out.println(wage); { int wage = 9000; System.out.println(wage); } { } // 6. 定義三個變量;不要這樣寫 不要這樣寫 不要這樣寫 // int x ,y = 124,z ; int x = 120; int y = 124; int z = 125; } }
個別易理解未進行練習