Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/179.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java中的数组?_Java_Arrays_Loops_For Loop - Fatal编程技术网

Java中的数组?

Java中的数组?,java,arrays,loops,for-loop,Java,Arrays,Loops,For Loop,因此,我需要找到一种方法,让我的程序保存用户要输入的名称字符串。数组将总共包含五个名称,并将所有信息连同输入的名称一起输出回用户。我使用一个主类。 到目前为止,这就是我所拥有的: import java.util.Scanner; public class Names { /** * @param args the command line arguments */ public static void main(String[] args) { // TODO code appl

因此,我需要找到一种方法,让我的程序保存用户要输入的名称字符串。数组将总共包含五个名称,并将所有信息连同输入的名称一起输出回用户。我使用一个主类。 到目前为止,这就是我所拥有的:

import java.util.Scanner;
public class Names {

/**
 * @param args the command line arguments
 */
public static void main(String[] args) {
    // TODO code application logic here

    Scanner input = new Scanner (System.in);
     String [] name = new String [5];


     for (int i = 0; i < 5; i++){
        System.out.println("Enter name: ");
        String UserNames = input.nextLine();
         name[i] = UserNames;


       }
    }
}
谢谢你给我的任何帮助

我需要知道这是否在数组中正确存储了名称


因此,在数组中填充

后,打印数组,这样做似乎是正确的

要打印它们,需要在数组中循环

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

按照Kepani的建议,您可以尝试Arrays.toString GarrayVarname

public static void main(String[] args)
{
     String [] arx = {"alpha", "beta", "gamma", "penta", "quad"};
     System.out.println(arx); // returns object hashcode and not the strings stored 
     System.out.println(Arrays.toString(arx));
}
如果您不知道是否将获得5个或更多输入,可以尝试arraylist

public static void main(String[] args)
{
    ArrayList<String> strList = new ArrayList<String>();
    strList.add("alpha");//Construct would be strList.add(input)
    strList.add("beta");
    strList.add("gamma");
    strList.add("penta");
    strList.add("quad");

    System.out.println(strList);
    System.out.println(strList.toString());
}

正如您所意识到的,由于使用了泛型ArrayList.toString返回字符串存储的完整列表,我觉得这没问题,但为什么不试试看它是否有效?您也可以稍后通过使用循环来迭代数组并分别打印每个名称来打印它们。使用userName而不是usernames你不应该试一试,看看它是否有效吗?我也同意Vertex,尽管这更像是一种惯例。@NickL。如果您选择的名称仅由一个单词组成,请使用所有小写字母拼写该单词。如果它由一个以上的单词组成,则将其后每个单词的第一个字母大写。强调我的。这正是我所缺少的。@user2934105然后你可以向回答者iajrz展示接受答案的礼貌。您可能希望养成使用数组大小来驱动循环的习惯。通过在for循环头中使用ipublic static void main(String[] args) { ArrayList<String> strList = new ArrayList<String>(); strList.add("alpha");//Construct would be strList.add(input) strList.add("beta"); strList.add("gamma"); strList.add("penta"); strList.add("quad"); System.out.println(strList); System.out.println(strList.toString()); }