繁体   English   中英

如何访问ArrayList中的ArrayList? Java的

[英]How to access an ArrayList in an ArrayList? Java

首先让我告诉你我想做什么。 该程序应要求输入密码,然后为密码的每个字符创建数组列表。 然后,这些列表将被添加到整个数组列表。(mylist)问题是我该如何使用字符串值填充ArrayList? 当所有数组列表都填充后,我希望能够按字母顺序对其进行排序。 代码打击。

// Creating ArrayLists
ArrayList<ArrayList<String>> mylist = new ArrayList<ArrayList<String>>();
List<String> mycode = new ArrayList<String>();    
char[] test;
String mypassword;

System.out.println("Pleaseinput your passphrase");
        // Getting user input (Password)
        Scanner in = new Scanner(System.in);
        mypassword = in.nextLine();
        // Storing password in character array
        test= mypassword.toCharArray();

    // Beginning for loop to create array lists for each character
    // in the password
    for (int i = 0; i < mypassword.length(); i++) { 
            mycode = new ArrayList<String>();
            // Here I'm trying to give the created Arraylist (mycode)
            // a name or value of the character the for loop is at so I                  can order it alphabetically later.
            mycode.equals(test[i]);
            // Adds the array list.
            mylist.add((ArrayList<String>) mycode);
        }

预先感谢您对我的问题的任何建议。

从注释中假定,您只想将String转换为List<String> ,其中每个字符都是String ,但要使每个字符作为列表中的第一个元素,而让“ hello”作为列表中的第二个元素q ...

public static void main(String[] args) {
    // Creating ArrayLists
    List<List<String>> mylist = new ArrayList<>();
    String mypassword;

    System.out.println("Pleaseinput your passphrase:");
    // Getting user input (Password)
    Scanner in = new Scanner(System.in);
    mypassword = in.nextLine();

    // Beginning for loop to create array lists for each character
    // in the password      
    for (int i = 0; i < mypassword.length(); i++) { 
        List<String> firstCharAndMore = new ArrayList<>();
        char c = mypassword.charAt(i);
        firstCharAndMore.add(String.valueOf(c));
        if ('q' == c) {
            firstCharAndMore.add("hello");
        }
        mylist.add(firstCharAndMore);
    }
    System.out.println(mylist.toString());
}

输入qwertyqwerty输出: [[q, hello], [w], [e], [r], [t], [y], [q, hello], [w], [e], [r], [t], [y]]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM