資料型別、型別轉換、變數以及運算子
阿新 • • 發佈:2021-08-20
註釋
單行註釋
// 直接兩個/
多行註釋
/* */ 先打 / 和 * ,然後回車自動補齊,在中間區域打字寫註釋
文字註釋
/** */ 先打 / * 和 * ,然後回車自動補齊,在中間區域打字寫註釋
資料型別
強型別語言
要求變數的使用要嚴格符合規定,所有變數必須先定義後才能使用
Java的資料型別分為兩大類
基本型別
-
數值型別:
整數型別 byte、short、int、long
浮點型別 float、double
字串型別 char
-
boolean型別(兩個值,true和false)
引用型別
- 類
- 介面
- 陣列
程式碼
//整數 int num1=10;//最常用 byte num2=20; short num3=30; long num4=30L;//long型別要在數字後面加L //小數:浮點數 float num5=50.1F;//float型別要在數字後面加個F double num6=3.1415926; //字元 char name='我'; //多個字要用字串,而在字串中,String不是關鍵字,是類 //String name="我愛你" //布林值:是非 boolean flag=true; boolean flag=false;
什麼是位元組(補充)
-
位(bit):是計算機內部儲存的最小單位,而11001100就是一個八位二進位制數
-
位元組(byte):是計算機中資料處理的基本單位,習慣上用大寫字母B來表示
-
1B(byte,位元組)=8bit(位)
-
字元:是指計算機中使用的字母、數字、字和符號
-
1bit表示1位
-
1Byte表示一個位元組 1B=8b,即一個位元組等於一個八位
-
1024B=1KB
-
1024KB=1M
-
1024M=1G
儘量避免使用浮點數進行比較
強制型別轉換
char a='中' system.out.println(a); system.out.println((int)a);//強制轉換
轉義字元
System.out.println("Hello\tWorld");//輸出結果會在Hell和World中間出現空格,\t製表符
System.out.println("Hello\nWorld");//輸出結果會在Hell和World換行,\n換行
布林值擴充套件
Boolean flag=true;
if(flag==true){}
if(flag){} //兩者表示的意義相同
型別轉換
運算中,不同型別的資料先轉換為同一型別,然後進行運算
小數的優先順序高於整數
int i=128; byte b=(byte)i;//強制轉換 (型別)變數名 優先順序由:高 到 低 int i=128; double b=i;//自動轉換 優先順序由:低 到 高
注意點
- 不能對布林值進行轉換
- 不能把物件型別轉換為不相干的型別(例如int轉為String)
- 再把高容量轉為低容量時,要強制轉換
- 轉換的時候可能存在記憶體溢位,或者精度問題
資料溢位問題
運算元比較大的時候,注意溢位問題
int money =10_0000_0000;//數字之間可以用下劃線分割
int years = 20;
int total= money*years;//-1474936480,計算的時候溢位了
long total2=money*years;//-1474936480,等式右邊預設是int,轉換之前就出了問題
long total3=money*(long)years;//先把一個數轉換為long
變數作用域
類變數
例項變數
區域性變數
public class Demo08 {
//類變數 static
static double salary=2500;
//屬性:變數
//例項變數:從屬於物件;如果不自行初始化,它的值為這個型別的預設值
String name;//除了基本型別,預設值都是null
int age;//數值型別如果不初始化,這個型別的預設值為0 Boolean值預設為false
//main方法
public static void main(String[] args) {
//區域性變數;必須宣告和初始化值,只在這一塊括號區域內有用
int i=10;
System.out.println(i);
//變數型別
Demo08 demo08=new Demo08();
//Demo08 demo08 = new Demo08();
System.out.println(demo08.age);
System.out.println(salary);
}
//其他方法
public void add(){
}
}
變數的命名規範
常量
常量名一般使用大寫字元
public class Demo09 {
//static、final修飾符,不存在先後順序
//final 常量名 =值
static final double PI=3.14;
public static void main(String[] args) {
System.out.println(PI);
}
}
基本運算子
運算子
二元運算
int a =10;
int b =20;
System.out.println(a/(double)b);//除出來小數的時候一定要注意作用範圍
long a=1246548713L;
int b=134635;
short c= 10;
byte d=4;
//運算時含long型別最後結果為long,不含long結果全轉為int型別
System.out.println(a+b+c+d);//Long型別
System.out.println(b+c+d);//int型別
System.out.println(c+d);//int型別
關係運算
//關係運算符返回的結果:正確or錯誤 用 布林值 來表示
int a =10;
int b=20;
System.out.println(a>b);//false
System.out.println(a<b);//true
System.out.println(a==b);//false
System.out.println(a!=b);//true