首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 相關知識

Java 數組去重、增刪元素實用技巧

     編輯:Java 相關知識

核心思路:轉 List 操作再轉回數組

Java 數組長度固定,增刪改需借助 ArrayList。

1. 去重

String[] arr = {"Java", "C++", "PHP", "C#", "Python", "C++", "Java"};
List<String> list = new ArrayList<>();
for (String s : arr) if (!list.contains(s)) list.add(s);
String[] unique = list.toArray(new String[0]);
// 結果:[Java, C++, PHP, C#, Python]

或用 LinkedHashSet 保持順序:

String[] unique = new LinkedHashSet<>(Arrays.asList(arr)).toArray(new String[0]);

2. 刪除指定索引元素

List<String> list = new ArrayList<>(Arrays.asList(arr));
list.remove(2); // 刪除 "PHP"
String[] arr2 = list.toArray(new String[0]);

3. 指定位置插入元素

List<String> list = new ArrayList<>(Arrays.asList(arr));
list.add(2, "Ruby"); // 在索引 2 插入
String[] arr3 = list.toArray(new String[0]);

4. 末尾追加元素

list.add("Go"); // 等同於 list.add(list.size(), "Go")

性能提示

  • 頻繁增刪建議直接用 ArrayList 而非數組
  • 去重大數據量時 HashSet O(1) 查找優於 List.contains O(n)
  • Java 10+ 可用 var 簡化聲明

完整測試類

public class ArrayUtilsDemo {
    public static void main(String[] args) {
        String[] src = {"Java", "C++", "PHP", "C#", "Python", "C++", "Java"};
        print("原始", src);
        print("去重", unique(src));
        print("刪除索引2", removeAt(src, 2));
        print("索引2插入Ruby", insertAt(src, 2, "Ruby"));
    }
    // 工具方法省略...
}
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved