前往
大廳
主題

Java SE 學習札記 #2

Film | 2021-08-27 13:20:42 | 巴幣 0 | 人氣 56

Java SE 學習札記 #2

使用教材 : Java 7 教學手冊 第五版 / 洪維恩 著


註:學習時使用JAVA 11版本進行,並非使用老師教學的JAVA 7


第三章 : 變數與資料型態


第三章 摘要:

1.Java 的資料型態可分為原始資料型態 ( primitivev type ) 與非原始資料型態 ( non-primitive type )。
2.Java 提供byte、shor、int與long四種整數型態最小值與最大值的代碼。最大值的代碼是:MAX_VALUE,最小值的代碼是 : MIN_VALUE。如果要取用某個型態的最大值或最小值,只要在這些代碼之前,加上所屬的類別全名即可。
例: java.lang.Long.MAX_VALUE,在使用上述代碼時,可以得知,要使用某個型態的代碼,則必須先指定到該型態所在的類別庫,以及該型態所屬類別,不過在JAVA裡java.lang實在太常使用了,所以預設的
Java程式會將他載入,因此在實際應用上可以省略它。
3.Java 使用Unicode (標準萬國碼) 為編碼系統,因此在各種平台都不會有相容性問題。
4.為浮點數 (float) 型態的變數設值時,要在數值後面加上F 或 f,因為浮點數型態預設使用為double。
5.布林 (boolean) 型態的變數,只有 true (真) 與 false (假) 兩種。
6.資料型態的轉換可分為 "自動類型轉換" 與 "強制類型轉換"
當容量小的數據類型變數與容量大的數據類型變數進行運算時,會自動轉還為大的變數類型。
byte > char > short > int > long > float > double
特別的 : 當byte 、 char 、 short 三種類型自動轉換時,會轉換成int,如果要保持原類型,必須使用強轉符 0() 強轉, 例 : (byte) 5+4 ;  不過使用強轉可能導致精度損失。
7.由使用者輸入,可以使用Scanner 類別完成:
例 : import java.util.Scanner;
    public class ScannerTest{
    public static void main(String[]args){
            Scanner 物件名稱 = new Scanner(System.in);
            資料型態 變數名稱 a;   //例 :int age;
            age = 物件名稱.相對應的型態的Scanner類別函數;
             //這邊已經宣告為int的 a,它的類別函數為:nextInt();
        }
}
8.char (字元型態) ,佔有兩個位元組,可以用來儲存英文字母等字元,字元變數在設值時可以是Unicode
的編碼數值、字元,或是以 uxxxx 帶出來的十六進制數值(必須為四個數字,或A~F 與a~f所組成),要注意的是,在設定變數為某個字元時,必須使用一對單引號('  ')刮起來 ; 而已 u 帶出來的十六進制,除了可列印一般的字元外,亦可列印出無法用鍵盤輸入的字元。
char 例:  列印B 與十六進 的 B;
char B = 'B'; //記得單引號
char B1 = 'u0042';  //十六進,必須為4個數字或A~F / a~f  所組成。

第三章 習題:
1.撰寫一程式,將兩個變數值相加與相除後印出其結果。
  float f = 6235.748f;
  int i= 13;

        System.out.println("f + i = "+(f+i));
        System.out.println("f / i = "+(f/i));
cmd:f + i = 6248.748
f / i = 479.6729

2.將字元變數 ch 的值設為100,再列印出,會得到什麼結果,為甚麼?
得到 d ,被設值為10進位的100。

創作回應

更多創作