2025-05-17

 

 

大數值和數組

1、大數值

    1.1 如果基本的整數和浮點數精度不滿足需求,那麼可以使用java.math包中的BigInteger和BigDecimal來處理包含任意長度序列的數值。

    1.2 可以使用靜態方法valueOf方法將普通的數值轉換為大數值

      如:BigInteger a = BigInteger.valueOf(100);

   1.3不能使用熟悉的算術運算符(如+\*)處理大數值,而應該使用大數值類中的add和mutilply等方法 。

       如:BigInteger c = a.add(b)  // 相當於c = a + b;

2、數組

     2.1 是一個數據結構,來存儲同一類型的數值的集合;並通過整型下標訪問數組中的每一個值。

    2.2 聲明數組的方法:int a[] 或int[] a 。這兩種方式均可,但大多數java程序員喜歡後者,因為它將類型int[] 和變量名a分開瞭。

   2.3 一旦創建瞭數組,其大小將不能被改變。如果經常擴展數組可以使用另一個數據結構–數組列表(array list)。

  2.4 java SE 5.0增加一中功能很強的循環結構,可以依次處理數組中的每個元素,而不需要關心數組下標。

      語法:for(遍歷使用的元素變量名: 集合變量) 處理語句;

       如:for(int element : a) System.out.printf(element);

  2.5 java中允許數組長度為0的數組,這在編寫一個結果為數組的方法,如果碰巧結果為空,則這種形式就顯得非常有用。

     如:new elementType[0];

     ★長度為0的數組和null是不同的。

 2.6 對於命令行參數數組來說,並不會將程序名傳入,這與c++不同。

 2.7對於數組的拷貝、檢索和排序等,可以使用Array類中的相關靜態方法實現。

     ★java se6之前是使用System.arrayCopy進行數組拷貝。

 2.8 java實際上沒有多維數組,隻有一維數組,多維數組可以解釋為“數組中的數組”。

     ★java 中的double arr[10][6] 相當於c++中的double** arr = new double*[10]。所以它可以創造一個鋸齒裝的數組。

本文出自 “Myworld” 博客

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *