【问题标题】:Multi-dimensional Java ArrayList (Declared element syntax)多维 Java ArrayList(声明元素语法)
【发布时间】:2012-10-07 23:30:24
【问题描述】:

是否可以做到以下几点?

private static ArrayList<integer<integer<String>>> myArrayList;

换句话说,创建一个声明元素语法的 ArrayList?

例子:

myArrayList[0][0] = "This is the string.";

如果没有,是否可以对普通数组进行此操作?

【问题讨论】:

  • 你试过了吗?你得到了什么结果?并且整数会比整数好得多:)
  • 你需要一个多维字符串数组吗?
  • integer 应该是 Integer 并且你不能这样做 Integer&lt;String&gt;。这是不允许的。
  • 整数是用户定义的类吗?如果没有,您的代码甚至无法编译。您是否正在学习编程而不编写程序?

标签: java generics multidimensional-array arraylist


【解决方案1】:

看来你在寻找Java中的多维数组,声明如下:

String [][] list = new String[10][10];
list[0][0] = "This is a string";
System.out.println(list[0][0]);

【讨论】:

    【解决方案2】:

    您可以通过以下方式声明ListList:-

    List<List<String>> listOfList = new ArrayList<List<String>>();
    

    初始化您的列表,然后将字符串添加到您的列表元素:-

    listOfList.add(new ArrayList<String>());
    
    listOfList.get(0).add("my String");
    

    【讨论】:

      【解决方案3】:

      你可以的

      List<List<String>> list = new ArrayList<List<String>>();
      list.add(new ArrayList<String>());
      
      list.get(0).add("This is the string");
      

      【讨论】:

        【解决方案4】:

        您希望实时实现什么?Java 定义了一组 API,它们有自己的用途和目的。如果你想使用多维数组,我建议去Object[][],虽然你应该可以声明

        ArrayList list[][] = new ArrayList[5][7];
        

        这样做会使您的操作变得有点复杂。还有更多 ArrayList 只是一维 Object 数组。

        仅供参考

        How to create a Multidimensional ArrayList in Java?

        【讨论】:

        • 很遗憾,您的语法有误。也不确定“实时实现”是什么意思。
        • 我不理解“错误语法”的注释,这是一个可以编译的有效 java 语句。
        • 它确实可以编译,但我认为它没有按照你的意思做。 new ArrayList[5][7] 将实例化一组原始数组 ArrayLists,这不是 OP 想要的。您可能指的是 Peter 和 Rohit 所展示的内容。
        • 这并不意味着语法错误,同意我的回答不是相关的 OP 问题。
        猜你喜欢
        • 2013-02-15
        • 2020-11-08
        • 1970-01-01
        • 2014-04-08
        • 1970-01-01
        • 1970-01-01
        • 2023-03-19
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多