如何將數組轉為List

在Java編程中,我們常常需要將數組轉換成List。這種操作非常常見,本文將介紹多種方法用於將數組轉換為List。

一、如何將數組轉為對象

方法1:利用Arrays.asList()方法。

    String[] strArray = { "a", "b", "c"};
    List list = Arrays.asList(strArray);

方法2:利用Collections.addAll()方法

    Integer[] intArray = { 1, 2, 3 };
    List list = new ArrayList();
    Collections.addAll(list, intArray);

二、如何將數組轉為字元串

方法1:利用Arrays.toString()方法

    String[] strArray = { "a", "b", "c" };
    String str = Arrays.toString(strArray);

方法2:遍曆數組並將元素拼接成字元串

    String[] strArray = { "a", "b", "c" };
    StringBuilder sb = new StringBuilder();
    for (String str : strArray) {
        sb.append(str);
    }
    String str = sb.toString();

三、如何將數組轉為集合

方法1:利用Arrays.asList()方法

    Integer[] intArray = { 1, 2, 3 };
    List list = Arrays.asList(intArray);

方法2:利用Collections.addAll()方法

    Integer[] intArray = { 1, 2, 3 };
    List list = new ArrayList();
    Collections.addAll(list, intArray);

四、如何將int數組轉為集合

方法1:利用Java8的Stream API

    int[] intArray = { 1, 2, 3 };
    List list = IntStream.of(intArray).boxed().collect(Collectors.toList());

方法2:利用Apache Commons Lang3包中的ArrayUtils.toObject()方法

    int[] intArray = { 1, 2, 3 };
    List list = Arrays.asList(ArrayUtils.toObject(intArray));

五、如何將數組轉為樹形結構

方法1:利用遞歸

    class TreeNode {
        int val;
        TreeNode left;
        TreeNode right;
        TreeNode(int x) { val = x; }
    }

    public TreeNode arrayToTree(int[] arr, int start, int end) {
        if (start > end) {
            return null;
        }

        int mid = (start + end) / 2;
        TreeNode root = new TreeNode(arr[mid]);
        root.left = arrayToTree(arr, start, mid - 1);
        root.right = arrayToTree(arr, mid + 1, end);

        return root;
    }

方法2:利用隊列

    class TreeNode {
        int val;
        TreeNode left;
        TreeNode right;
        TreeNode(int x) { val = x; }
    }

    public TreeNode arrayToTree(int[] arr) {
        if (arr == null || arr.length == 0) {
            return null;
        }

        int i = 0;
        TreeNode root = new TreeNode(arr[i]);
        Queue queue = new LinkedList();
        queue.offer(root);

        while (!queue.isEmpty()) {
            TreeNode node = queue.poll();

            if (++i < arr.length) {
                node.left = new TreeNode(arr[i]);
                queue.offer(node.left);
            }

            if (++i < arr.length) {
                node.right = new TreeNode(arr[i]);
                queue.offer(node.right);
            }
        }

        return root;
    }

六、對象轉為數組

方法1:利用反射

    public Object[] toArray(Object obj) throws IllegalAccessException {
        Class clazz = obj.getClass();
        Field[] fields = clazz.getDeclaredFields();
        Object[] result = new Object[fields.length];

        for (int i = 0; i < fields.length; i++) {
            fields[i].setAccessible(true);
            result[i] = fields[i].get(obj);
        }

        return result;
    }

方法2:利用Java8的Stream API

    public Object[] toArray(Object obj) throws IllegalAccessException {
        Class clazz = obj.getClass();
        Field[] fields = clazz.getDeclaredFields();
        Object[] result = Arrays.stream(fields)
                .map(f -> {
                    f.setAccessible(true);
                    try {
                        return f.get(obj);
                    } catch (IllegalAccessException e) {
                        throw new RuntimeException(e);
                    }
                }).toArray();

        return result;
    }

七、arraylist轉為數組

方法1:利用toArray()方法

    List list = new ArrayList();
    Integer[] arr = list.toArray(new Integer[0]);

方法2:利用Java8的Stream API

    List list = new ArrayList();
    Integer[] arr = list.stream().toArray(Integer[]::new);

八、怎麼把數組轉為字元串

方法1:利用Arrays.toString()方法

    String[] strArray = { "a", "b", "c" };
    String str = Arrays.toString(strArray);

方法2:遍曆數組並將元素拼接成字元串

    String[] strArray = { "a", "b", "c" };
    StringBuilder sb = new StringBuilder();
    for (String str : strArray) {
        sb.append(str);
    }
    String str = sb.toString();

九、數組如何轉為集合

方法1:利用Arrays.asList()方法

    String[] strArray = { "a", "b", "c" };
    List list = Arrays.asList(strArray);

方法2:利用Collections.addAll()方法

    String[] strArray = { "a", "b", "c" };
    List list = new ArrayList();
    Collections.addAll(list, strArray);

本文介紹了多種方法用於將數組轉換為List,每種方法都有利弊。選擇應該根據具體情況而定,建議多加嘗試。

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/253786.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-14 02:17
下一篇 2024-12-14 02:17

相關推薦

  • Python導入數組

    本文將為您詳細闡述Python導入數組的方法、優勢、適用場景等方面,並附上代碼示例。 一、numpy庫的使用 numpy是Python中一個強大的數學庫,其中提供了非常豐富的數學函…

    編程 2025-04-29
  • Python返回數組:一次性搞定多種數據類型

    Python是一種多用途的高級編程語言,具有高效性和易讀性的特點,因此被廣泛應用於數據科學、機器學習、Web開發、遊戲開發等各個領域。其中,Python返回數組也是一項非常強大的功…

    編程 2025-04-29
  • Tensor to List的使用

    Tensor to List是TensorFlow框架提供的一個非常有用的函數,在很多的深度學習模型中都會用到。它的主要功能是將TensorFlow中的張量(Tensor)轉換為P…

    編程 2025-04-29
  • Python去掉數組的中括弧

    在Python中,被中括弧包裹的數據結構是列表,列表是Python中非常常見的數據類型之一。但是,有些時候我們需要將列表展開成一維的數組,並且去掉中括弧。本文將為大家詳細介紹如何用…

    編程 2025-04-29
  • Python操作數組

    本文將從多個方面詳細介紹如何使用Python操作5個數組成的列表。 一、數組的定義 數組是一種用於存儲相同類型數據的數據結構。Python中的數組是通過列表來實現的,列表中可以存放…

    編程 2025-04-29
  • 如何將Oracle索引變成另一個表?

    如果你需要將一個Oracle索引導入到另一個表中,可以按照以下步驟來完成這個過程。 一、創建目標表 首先,需要在資料庫中創建一個新的表格,用來存放索引數據。可以通過以下代碼創建一個…

    編程 2025-04-29
  • Python如何將字元串1234變成數字1234

    Python作為一種廣泛使用的編程語言,對於數字和字元串的處理提供了很多便捷的方式。如何將字元串「1234」轉化成數字「1234」呢?下面將從多個方面詳細闡述Python如何將字元…

    編程 2025-04-29
  • Python二維數組對齊輸出

    本文將從多個方面詳細闡述Python二維數組對齊輸出的方法與技巧。 一、格式化輸出 Python中提供了格式化輸出的方法,可以對輸出的字元串進行格式化處理。 names = [‘A…

    編程 2025-04-29
  • 如何將Java項目分成Modules並使用Git進行版本控制

    本文將向您展示如何將Java項目分成模塊,並使用Git對它們進行版本控制。分割Java項目可以使其更容易維護和拓展。Git版本控制還可以讓您跟蹤項目的發展並協作開發。 一、為什麼要…

    編程 2025-04-28
  • 如何將Python開發的網站變成APP

    要將Python開發的網站變成APP,可以通過Python的Web框架或者APP框架,將網站封裝為APP的形式。常見的方法有: 一、使用Python的Web框架Django Dja…

    編程 2025-04-28

發表回復

登錄後才能評論