1

我正在尝试制作一个程序,要求用户输入 3 个城市,该程序应该采用 3 个城市,并将它们放入字符串数组中,第一个城市在 [0],第二个在 [1] 和[2] 中的第三个,我得到它来询问他们,收集答案,但它只是打印出第一个答案,而不是全部 3。有什么想法可以解决这个问题吗?

我的代码看起来像这样

public static void main(String[] args) {

    String ans;   
    String[] favoritStad = new String [3];
    Scanner scanner1 = new Scanner (System.in);

    System.out.println("skriv in 3 favoritstäder");
    String Användarinlägg1 = scanner1.nextLine();
    String Användarinlägg2 = scanner1.nextLine();
    String Användarinlägg3 = scanner1.nextLine();

    favoritStad[0] = Användarinlägg1;
    favoritStad[1] = Användarinlägg1;
    favoritStad[2] = Användarinlägg1;


    System.out.print(Användarinlägg1);  

}

Användarinlägg 是 userinputt ,喜爱 stad 是 favcity 字符串“ans”只是我试图收集所有 3 个答案并将其打印出来但从未弄清楚的想法

解决了!只需要添加

System.out.print(Användarinlägg2);
System.out.print(Användarinlägg3);
4

5 回答 5

2

正如我在您的问题下方的评论中所建议的那样 - 使用for循环。Användarinlägg1如果您没有一遍又一遍地 使用相同的变量(例如 ),请务必检查两次。

favoritStad[0] = Användarinlägg1;
favoritStad[1] = Användarinlägg2;
favoritStad[2] = Användarinlägg3;

for(int i=0; i<favoritStad.length; i++) {
    System.out.println(favoritStad[i]);
}
于 2013-09-11T13:26:40.637 回答
0

您可以使用for循环打印数组的所有值。您可以使用以下内容:

for (int i=0; i<favoritStad.length();i++){
    System.out.println(favoritStad[i])
}
于 2013-09-11T13:28:14.527 回答
0

试试这个方法

favoritStad[1] = Användarinlägg2;
favoritStad[2] = Användarinlägg3;

现在打印数组:

第一种方式:

for(int i=0; i<favoritStad.length; i++) {
    System.out.println(favoritStad[i]);
}

第二种方式:

 for(String s :favoritStad) {
      System.out.println(s);
  }
于 2013-09-11T13:28:18.570 回答
0

还需要打印...

System.out.print(favoritStad); 

代替

System.out.print(Användarinlägg1); 
于 2013-09-11T13:30:28.897 回答
0

在您的代码中,您已经添加了3 次相同的元素。

你需要使用:

favoritStad[0] = Användarinlägg1;
favoritStad[1] = Användarinlägg2;
favoritStad[2] = Användarinlägg3;

为了打印,您可以使用 for 循环或只是:

System.out.print(favoritStad[0]);
System.out.print(favoritStad[1]);
System.out.print(favoritStad[2]);
于 2013-09-11T13:25:00.773 回答