Java多维数组

时间:2016-01-07 15:45:10

标签: java multidimensional-array

我有两个用户名和姓氏的维度数组,并且能够打印姓名和姓氏。但我想在下面做并寻求帮助。

1)将名称与字符串匹配并输出名称和姓氏

尝试使用If循环,但没有打印Surname。

如果String name作为ABC给出,它应该与数组匹配,然后打印Name和Surname的两个值。

String[][] names = {{"ABC","DEF"},{"GHI","JKL"}};

      String name = "ABC"; 

      for (int i = 0; i < names.length; i++) {


          System.out.print(names[i][0] + ": ");

          for (int j = 1; j < names[i].length; j++) {

              System.out.print(names[i][j] + " ");

          }

          System.out.println();

          }

1 个答案:

答案 0 :(得分:0)

试试这个:

for (String[] fullName : names) {
    if (fullName[0].equals(name)) {
        for (String s : fullName) {
            System.out.print(s + " ");
        }
        System.out.println();
    }
}

如果您不了解这些for循环:它们按顺序迭代每个元素,即无需使用索引来访问元素。这些都是一样的:

for (int i = 0; i < array.length; i++) {
    String element = array[i];
}

for (String element : array) {

}

另一种可能性是使用HashMap

String name = "ABC";

HashMap<String, String> fullNames = new HashMap<>();
fullNames.put("ABC", "DEF");
fullNames.put("GHI", "JKL");

if (fullNames.contains(name)) {
    System.out.println(name + " " + fullNames.get(name));
}