1. 程式人生 > 其它 >java 基礎(二)

java 基礎(二)

6.型別裝換

由於java是強型別語言,所以要進行有些運算的時候的,需要用到型別裝換

原則:1. 強制轉換 (型別)變數名 高→低

2. 自動轉換 低→高

byte,short,char→int→long→float→double

程式碼

    int i = 128;
byte b = (byte)i;

//強制轉換 (型別)變數名 高→低

System.out.println(i);
System.out.println(b);

//自動轉換 低→高
int i1 = 128;
double d1 = i1;

/*
* 注意點
* 1.不能對布林型進行裝換
* 2.不能吧物件型別轉換為不相干的型別
* 3.在把高容量轉換到容量的時候,強制轉換,反之不用動
* 4.轉換的時候可能存在記憶體溢位,或者精度問題!
* */

System.out.println("=======================");
System.out.println((int)23.7);//23
System.out.println((int)-45.89f);//-45

System.out.println("=======================");
char c = 'a';
int d = c+1;
System.out.println(d);//98
System.out.println((char)d);//b

注意點

  1. 不能對布林型進行裝換

  2. 不能吧物件型別轉換為不相干的型別

  3. 在把高容量轉換到容量的時候,強制轉換,反之不用動

  4. 轉換的時候可能存在記憶體溢位,或者精度問題!

操作比較大的數的時候,注意溢位問題

    //操作比較大的數的時候,注意溢位問題
//JDK7新特性,數字之間可以用下劃線分割
int money = 10_0000_0000;
int years = 20;
int total = money*years;//-1474836480,計算的時候溢位了
long total2 = money*years;//預設是int型,轉換之前已經存在問題了?
System.out.println(total);
System.out.println(total2);

long total3 = money*((long)years);
System.out.println(total3);//20000000000

//L l:小寫l會經常看成數字1 養成書寫規範性


7.變數

 1. 變數是什麼:就是可以變化的量!
1. java是一種強型別語言,每個變數都必須宣告器型別。
1. java變數是程式中最基本的儲存單元,其要素包括變數名,變數型別和作用域。

type   varName ][=value][{,varName[=value]}];
//資料型別 變數名=值; 可以使用逗號隔開來宣告多個同類型變數

注意事項

  • 每格變數都有型別,型別可以是基本型別,也可以是引用型別。

  • 變數名必須是合法的識別符號。

  • 變數宣告是一條完整的語句,因此每一個宣告都必須一分號結束。


8.變數作用域

  • 類變數: 需要加一個關鍵字:static

  • 例項變數: 沒有static關鍵字

  • 區域性變數 : 在方法裡面的

public class Variable{
static int allClicks = 0; //類變數
String str = "Hello World"; //例項變數

public void method(){
int i = 0; //區域性變數
}
}

  //類變數 static
static double salary = 2500;

//屬性:變數

//例項變數:從屬於物件;如果不自行初始化,這個類的預設值認值
//所有的數值化型別 預設值: 0,0.0 輸出為0。
//字串變數的話是u0000 輸出為0。
//布林值:預設值是 false
//除了基本型別,其他型別(引用型別) 預設值都是null。

String name; //預設值;null
int age;//預設值:0

//方法塊
static {

}

//main方法
public static void main(String[] args) {
//區域性變數:必須宣告和初始化值
int i = 10;
System.out.println(i);

//變數型別 變數名字 = new Demo08
Demo08 demee08 = new Demo08();
System.out.println(demee08.age);
System.out.println(demee08.name);

//類變數 static
System.out.println(salary);
}

//其他方法
public void add() {
System.out.println();
}