亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何向數組中添加新元素?

如何向數組中添加新元素?

千萬里不及你 2019-06-25 13:52:49
如何向數組中添加新元素?我有以下代碼:String[] where;where.append(ContactsContract.Contacts.HAS_PHONE_NUMBER + "=1");where.append(ContactsContract.Contacts.IN_VISIBLE_GROUP + "=1");這兩個附件沒有編譯。那該怎么做呢?
查看完整描述

3 回答

?
慕虎7371278

TA貢獻1802條經驗 獲得超4個贊

List<String>,如ArrayList<String>..它是動態增長的,不像數組(參見:有效Java第2版,第25項:更喜歡列表而不是數組).

import java.util.*;//....List<String> list = new ArrayList<String>();list.add("1");list.add("2");list.add("3");System.out.println(list);
 // prints "[1, 2, 3]"

如果堅持使用數組,則可以使用java.util.Arrays.copyOf若要分配更大的數組以容納附加元素,請執行以下操作。不過,這確實不是最好的解決辦法。

static <T> T[] append(T[] arr, T element) {
    final int N = arr.length;
    arr = Arrays.copyOf(arr, N + 1);
    arr[N] = element;
    return arr;}String[] arr = { "1", "2", "3" };System.out.println(Arrays.toString(arr));
     // prints "[1, 2, 3]"arr = append(arr, "4");System.out.println(Arrays.toString(arr)); // prints "[1, 2, 3, 4]"

這是O(N)appendArrayList另一方面,O(1)每項業務的攤銷費用。

另見

  • Java教程/數組

    • 數組是一個容器對象,它持有固定數量的單個類型的值。創建數組時將確定數組的長度。在創建之后,它的長度是固定的。
  • Java教程/列表接口


查看完整回答
反對 回復 2019-06-25
?
拉莫斯之舞

TA貢獻1820條經驗 獲得超10個贊

還有另一個選項,我在這里沒有看到,它不涉及“復雜”對象或集合。

String[] array1 = new String[]{"one", "two"};String[] array2 = new String[]{"three"};String[] array = new String[array1.length + array2.length];
System.arraycopy(array1, 0, array, 0, array1.length);System.arraycopy(array2, 0, array, array1.length, array2.length);


查看完整回答
反對 回復 2019-06-25
  • 3 回答
  • 0 關注
  • 1107 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號