李剛java瘋狂講義(筆記)

數組初始化的兩種方式:

靜態初始化:初始化時由程序眼顯式指定每個數組元素的初始值,由系統決定需要的數組長度。

//定義一個int數組類型的變量,變量名爲intArr。

1:int [ ]  Arr =new int[ ]{5,6,2,3,4};

2:Object[ ] object;

object=new object[ ]{"java","李剛"};

3.定義和初始化同時完成

 int [  ] a={5,6,7,4,9};

java  中數組必須先初始化才能用,先在內存中分配空間並由系統自動分配初始值,或有程序員手動指定初始化。

 

動態初始化:程序員指定數組的長度,由系統指定數組的長度。

1:數組的定義和初始化同時完成,使用動態初始化語法

int [ ] arr=new int[5];

2.object [ ] arr=new String[4];

 

數組的查詢和賦值:

system.out.println(object[2]);

object[3]="spring";

 

使用增強for循環遍歷數組:


public class Array {

 
 public static void main(String[] args) {
  String[] arr={"孫悟空","豬八戒","沙和尚"};
  //使用增強for循環 遍歷數組(無需數組索引和數組長度)
  for(String arr1:arr){
   //arr1="唐僧";//雖然沒有語法錯誤,但是不要爲arr1指定值 否則會出現遍歷錯誤
   System.out.println(arr1);
  }

 }

}

 

內存中的數組:

數組引用變量只是一個引用,這個引用變量可以指向任何有效的內存,只有當該引用指向有效內存後,纔可通過該數組變量來訪問數組元素。 與所有引用變量相同的是,引用變量是訪問真實對象的根本方式。也就是說,如果我們希望在程序中訪問數組,則只能通過這個數組的引用變量來訪問它。 實際的數組元素被存儲在堆(heap)內存中;數組引用變量是一個引用類型的變量,被存儲在棧(stack)內存中。數組在內存中的存儲示意圖如圖4.2所示: 如果需要訪問圖4.2中堆內存中的數組元素,程序中只能通過p[index]的形式實現。也就是說,數組引用變量是訪問堆內存中數組元素的唯一方式。

 

 

import java.util.Arrays;
/**
 * 把四位數轉成漢字字符串
 * 先截再轉
 * @author Administrator
 *
 */


public class Num2Rmb {
 private String[] hanArr={"壹","貳","叄","肆","伍","陸","柒","捌","玖","拾"};
 private String[] unitArr={"拾","佰","千"};
 /**
  * 把一個浮點數分解成整數和小數部分字符串
  * num 需要被分解的浮點數
  * return分解出來的整數部分和小樹部分.
  */
 private String[] divide(double num){
  //把double類型變成整數類型
  long zheng=(long)num;
  //取小數
  long xiao=Math.round((num-zheng)*100);
  //返回整數和小樹部分
  return new String[]{zheng+"",String.valueOf(xiao)};
  
 }
 /**
  * 轉成漢字字符串
  * @param numStr
  * @return
  */
 private String toHanStr(String numStr){
  String result="";
  int numLen=numStr.length();
  for(int i=0;i<numLen;i++){
   int num=numStr.charAt(i)-48;
   if(i!=numLen-1&&num!=0){
    result+=hanArr[num]+unitArr[num-2-i];
   }else{
    result +=hanArr[num];
   }
  }
  return result;
 }
 public static void main(String[] args){
  Num2Rmb nr=new Num2Rmb();
  //測試把一個浮點數分解成整數部分和小樹部分
  System.out.println(Arrays.toString(nr.divide(236711123.123)));
  //測試把一個四位的數字字符串變成漢子字符串
  System.out.println(nr.toHanStr("6319"));
 }
}

 

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