Super_rain1004332 2022-01-20 15:11 采纳率: 100%
浏览 59
已结题

ArrayList<String>[] result = (ArrayList<String>[]) new ArrayList[3] 如何理解,详情如下

题目要求:创建一个元素是字符串列表的数组。
在数组中填入任意数据并在屏幕上显示。

•    createList 方法必须声明并初始化含 ArrayList<String> 元素的数组。
•    createList 方法必须返回创建的数组。
•    createList 方法必须在数组中添加元素(字符串列表)。这些列表不能为空。
•    程序应在屏幕上显示数据。
•    main 方法必须调用 createList 方法。
•    main 方法必须调用 printList 方法。

public class Solution {
    public static void main(String[] args) {
        ArrayList<String>[] arrayOfStringList = createList();
        printList(arrayOfStringList);
    }

    public static ArrayList<String>[] createList() {
      ArrayList<String>[] result = (ArrayList<String>[]) new ArrayList[3];//本行如何理解

        result[0] = new ArrayList<String>();
        result[1] = new ArrayList<String>();
        result[2] = new ArrayList<String>();

        result[0].add("Mama");
        result[1].add("Mila");
        result[2].add("Ramu");

        return result;
    }

    public static void printList(ArrayList<String>[] arrayOfStringList) {
        for (ArrayList<String> list : arrayOfStringList) {
            for (String s : list) {
                System.out.println(s);
            }
        }
    }
}

  • 写回答

2条回答 默认 最新

  • 於黾 2022-01-20 15:26
    关注

    其实就是画蛇添足,直接写

    ArrayList<String>[] result = new ArrayList<String>[3]
    

    就可以了
    这是先声明一个泛型列表,再强制转换回string类型,脱裤子放屁属于

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 1月26日
  • 已采纳回答 1月20日
  • 创建了问题 1月20日