【Java】_2_Java程式入門第一課

來源:互聯網
上載者:User

  首先說一下,為什麼學習Java。主要是因為要用到這個東西,現場有一個裝置,ABB的板型儀,裡面用的是Java做的後台 ,利用Java伺服器與

DSP晶片做資料擷取分析功能,DSP進行高速資料擷取,然後用Java做資料分析。所以需要想學習這個東西,來瞭解DSP和Java通訊,以及和Win32

平台通訊的一些相關內容。

【Java外殼類】

  我感覺這個Java和C#有點類似,首先什麼也不管,就需要定義一個類。我們首先來看這個類。

 1 /* 2  This program test the basic data type 3   4  1、boolean 5  2、byte 6  3、short 7  4、int 8  5、long 9  6、float10  7、double11  8、char12 13 */14 15 16 17 public class IntTest   //因為Java是純物件導向的程式設計語言,所有的可執行代碼均需要在類中,18                        //因此這裡必須定義一個類.19                        //這裡類作為一個載入“程式邏輯”的“容器”20                       21 {22    public static void main(String[] args)  //Java中所有的函數都屬於某個類,因此main方法需要一個”外殼類“

      我們看到這個東西,與C++還是不一樣的。

【Java boolean類型】

  在Java中提供了一種表示邏輯結果的資料類型:boolean

public class IntTest   //因為Java是純物件導向的程式設計語言,所有的可執行代碼均需要在類中,                       //因此這裡必須定義一個類.                       //這裡類作為一個載入“程式邏輯”的“容器”                      {   public static void main(String[] args)  //Java中所有的函數都屬於某個類,因此main方法需要一個”外殼類“     {        //首先測試boolean類型                boolean YesOrNo=true;                if(YesOrNo)           System.out.println("Yes");

  我們可以看到,這裡布爾類型與C語言中的布爾類型非常類似,但是有一點不同的是,C語言中“非零即True,零等價於False”, 而在Java中不能這樣認為,因為Java中不支援

布爾類型和其他類型間的轉換。這一點必須注意。如所示:

【Java byte類型】

  在Java中提供了一種單位元組大小的資料類型:byte;這種資料類型,用來表示小數值時比較有效,節省記憶體空間;但是不利於CPU處理。

             //測試byte類型        byte OverFlow=(byte)300;               System.out.println(OverFlow); //因為在Java中byte表示的大小從 -128 ~ 127 共256個狀態,同時                                           //進行type cast時會進行截取,所以這裡輸出是 44             OverFlow=300 & 0xFF;             System.out.println(OverFlow); //可以看到在整型資料轉換時,可以根據儲存特點進行處理,與C語言類似             System.out.println("The max value of byte is:" + 0x7F);             System.out.println("The min value of byte is:" + ~0x7F); //可以看到這裡有點特殊,在C語言中提供了宏來表示max和                                                                      //min值,在Java中有沒有呢?

  通過測試我們發現,byte的數值範圍規定是: ~0x7F - 0x7F; 而且這裡還可以像C語言中一樣進行數值截取; 我不知道大家怎樣看待

強制類型轉換,我感覺用 “按位與” 更能體現電腦的電腦制。

     這裡有一點值得探討一下,為什麼-256是~0xFF呢,而且~0x7F是-128? 我目前感覺有點奇怪。上面的程式執行的結果如下所示:

  這裡我知道Double類型提供了一些常量: Double.POSITIVE_INFINITY、Double.NEGATIVE_INFINITY、Double.NaN來表示最大值

最小值和無窮大,但是byte有沒有提供這樣的類庫支援呢?

【Java Short類型】

    short類型與C語言中16位的有符號short類型一致,表示的值的範圍:-327687 ~ 32767. 如下所示:

        //測試short類型        short shortTestVar=0x7FFF;              System.out.println("The max value of short is:"+ shortTestVar);              System.out.println("The min value of short is:"+ ~shortTestVar);

  這段代碼啟動並執行結果如所示:

【Java int類型】

    int類型與C語言中有符號int類型一致(32位的int型),表示值的範圍是: 0x80000000 ~0x7FFFFFFF(電腦內標記法);

        //測試int類型        int intTestVar=0x80000000;            System.out.println("The max value of int is:"+ ~intTestVar);            System.out.println("The min value of int is:"+ intTestVar);

  運行結果如所示:

 

【Java long類型】

  long類型與C語言中long int類型一致, 表示的值範圍是:0x8000 0000 0000 0000 ~ 0x7FFF FFFF FFFF FFFF(電腦內標記法).

        //測試long資料類型        long longTestVar=0x8000000000000000L;         System.out.println("The max value of long is:"+ ~longTestVar);             System.out.println("The min value of long is:"+ longTestVar);

  運行結果如所示:

  long資料類型有一點需要說明:那就是如果要表示一個long型的整數,則必須在數字後面加上一個“L”。

【Java整型數小結】

  Java中沒有無符號數的概念,所有的整形資料均是有符號數;這一點是與C/C++不一樣的地方,需要注意。

  預設情況下整型字面值是int類型的;這一點很重要,否則容易出錯;如示:

【Java double資料和float資料】

  float資料佔用4位元組,而double資料佔用8位元組;同時float資料類型的有效位元是6~7位;double有效位是15位;在沒有特別說明的情況下,浮點

數字面值是double型的;如果要表示float型的浮點數字面值,則需要在字面值後面加F,如: 3.1415926F。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.