Java學習之數據類型

一、Java關鍵字

\quadJava關鍵字都是小寫的,一共48個。如下圖所示:
在這裏插入圖片描述
注意,與C或者C++不同,Java沒有將const和goto作爲關鍵字。目前這兩個是保留關鍵字,可能在未來會被Java採用,有可能永遠不用。Java還提供了3個特殊的直接量:true、false和null。故Java語言的標識符(即給程序中變量、類、方法命名的符號)不能是這48+2+3=5348+2+3=53個單詞。

二、基本類型

\quadJava有8個基本類型,其名稱和佔用內存如下圖所示:
在這裏插入圖片描述
除基本類型外,Java還有引用類型。實際上引用類型變量就是一個指針,只是Java語言中不再使用指針這個說法。引用類型包括類、接口和數組類型,還有一種特殊的null類型。值得指出的是,字符串不是基本數據類型,字符串是一個類,也就是一個引用數據類型。

1、整型

\quad整型包含四種類型:byte,short,int和long。與C/C++相比多了byte,byte一共8位,表示的數據範圍爲[128,127][-128,127]。以下幾點需要注意

  • 一個很大的數賦值給long型變量時,數的後面需要加上大寫的字母L。例如long val = 9000000000000000L;
  • 不能將超過當前數據類型範圍的數賦值,比如byte val = 1000;就是錯誤的賦值
  • 整數常量有3中表示方式:十進制、8進制和16進制。與C/C++相同,10進制前啥也不加,8進制前加0,16進制前加0x。例如int val = 010;val=8int val = 0x10;val=16

2、字符型

\quad首先Java包含C/C++的128個ASCII碼,使用方法與C/C++完全相同。更厲害之處在於,在Java中字符型常量也可以採用16進制編碼方式來表示,範圍是\u0000~\uFFFF,一共可以表示65535個字符。
\quad漢字用16進制編碼的範圍爲0x4E00~0x9FA5,一共20902個漢字。下面程序輸出前100個漢字:

public class basicData {
    public static void main(String[] args)
    {
        for(int i = 0x4E00; i < 0x4E00+100; i++)
        {
            // 與C/C++不同之處在於Java一定要顯示的實現數據類型的強行轉換
            char c = (char)i; 
            System.out.print(c);
        }
    }
}

在這裏插入圖片描述

3、浮點型

\quadJava浮點型跟C/C++一樣,需注意float精度範圍,且float需要在數字後加字母f顯示聲明。不同之處在於Java提供了正負無窮大和非數NaN。可參考程序:

public class basicData {
    public static void main(String[] args)
    {
        // 輸出的f1值發生改變,精度不夠,用double便可以保存精度
        float f1 = 5.2345556f;
        double f2 = 5.2345556;
        System.out.println(f1);
        System.out.println(f2);
        // Java有正負無窮大和非數NaN
        double t1 = Double.POSITIVE_INFINITY;
        double t2 = Double.NEGATIVE_INFINITY;
        double t3 = 0.0 / 0.0;
        System.out.println(t1);
        System.out.println(t2);
        System.out.println(t3);
    }
}

在這裏插入圖片描述

4、bool型

\quadJava中布爾型用boolean表示,其值只能是true或者false

5、類型轉換

\quadJava類型轉換跟C/C++很像,不同之處在於Java提供了字符串與數字之間的轉換。例如,字符串s可以通過Integer.parseInt(s)返回其對應的整數;數字也可以後面直接加上空字符串的形式變爲字符串,還可以將數字和字符串進行拼接,如下:

public static void main(String[] args)
{
    String s = "123456";
    int val = Integer.parseInt(s); // 將字符串解析爲整數
    System.out.println(val);

    String str1 = 5 + ""; // 將5轉化爲字符串"5"
    System.out.println(str1);
    String str2 = "Hello " + 7 + 513; // 將字符串和數字進行拼接,"Hello 7513"
    System.out.println(str2);
    String str3 = 7 + 513 + " Hello"; // 先算7+513,再進行拼接,"520Hello"
    System.out.println(str3);
}

在這裏插入圖片描述

發佈了222 篇原創文章 · 獲贊 99 · 訪問量 7萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章