Java基礎之數組

來源:互聯網
上載者:User

 

    數組是一種特殊的資料類型,在基礎課程裡面有很多地方講到過。

   1、數組的建立

        int [ ]num1 = new int[3];

       int [] num2 = new int[]{1,2,3};

       int [] num3 = {1,2,3};

       問一個小問題,請問這種定義方式對嗎? int [] num3 = new int[3]{1,2,3}; 答案:不對!這也是看張孝祥的視頻知道的。

      String []str1 = new String[3];

      String []str2 = new String[]{"a","b","c"};

      String []str3 = new String{"a","b","c"};

2、數組的初始化

    動態初始化:數組定義與為數組分配空間和賦值的操作分開進行;
    靜態初始化:在定義數位同時就為數組元素分配空間並賦值;
    預設初始化:數組是參考型別,它的元素相當於類的成員變數,因此數組分配空間後,每個元素也被按照成員變數的規則被隱士初始化。

   如果在聲明的同時給數組初始化,就不要指定數組的元素個數。反之,需要指定數組個數。

3、數組的列印
  我們知道,列印數組只會列印出數組的首地址。而我們十分想要知道的是數組中存了哪些資料。幸好我們可以通過以下方式列印出數組,

使用工具類Arrays.asList(),如下樣本:

package test;import java.util.Arrays;public class ShuZu {  public static void main(String[] args) {    int []num ={1,2,3,4};  String []str = new String[]{"a","b","c"};    System.out.println(Arrays.asList(num));  System.out.println(Arrays.asList(str)); }}

 

輸出結果:

[[I@de6ced]
[a, b, c]
之所以有下面的輸出結果是因為Arrays.asList()在jdk1.5版本以下版本需要傳入物件類型的參數asList(Object []obj)

而int是普通類型,不符全要求,於是系統自動調用jdk1.5版本的Arrays.asList(T ...a)方法,而這個方法會將數組當

成是一個參數傳入,於是就出現了上面只列印出地址的狀況,而字元數組則按照我們的要求列印出。

解決的辦法,可以將整形數組定義為Integer類型。Integer [] num = new Integer{1,2,3};

 

 

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.