Java从用户输入创建数组和字符串

Java从用户输入创建数组和字符串,java,arrays,string,Java,Arrays,String,我正在编写一个程序,首先将用户的输入作为一个int,然后构造一个数组,然后用户键入单个字符,并由此生成一个字符串。我已经写了一些代码,但我已经想出了一种写块的形式,我不知道从这里走到哪里。非常感谢您的帮助 编辑:我在从数组的输入中获取字符串时遇到了一个错误,其中一个方法不适用。我将在发生错误的代码中输入错误 例如: 有多少串?二, 输入字符串#1: 输入字母字符串,后跟Enter:t 输入字母字符串,后跟Enter:e 输入字母字符串,后跟Enter:s 输入字母字符串,后跟Enter:t 输入

我正在编写一个程序,首先将用户的输入作为一个int,然后构造一个数组,然后用户键入单个字符,并由此生成一个字符串。我已经写了一些代码,但我已经想出了一种写块的形式,我不知道从这里走到哪里。非常感谢您的帮助

编辑:我在从数组的输入中获取字符串时遇到了一个错误,其中一个方法不适用。我将在发生错误的代码中输入错误

例如:

有多少串?二,

输入字符串#1:

输入字母字符串,后跟Enter:t

输入字母字符串,后跟Enter:e

输入字母字符串,后跟Enter:s

输入字母字符串,后跟Enter:t

输入字母字符串,后跟Enter:%

输入字符串#2:

输入字母字符串,后跟Enter:one

输入字母字符串,后跟Enter:two

您输入的字符串是:

测试一二

代码如下:

    package workfiles;


   //George Flamburis
   import java.util.*;

   public class Hw3 {

private static Scanner numScan;

public static void main(String[] args) {
    int numstring=0;

    numScan = new Scanner(System.in);

    while (numstring <= 0 ){
        System.out.print("How many strings? ");
        numstring = numScan.nextInt();
        if (numstring<1){
            System.out.print("Please enter a positive (> 0) number.");
            }
        }

    String[] stringarray = new String[numstring];

    for (int i = 0; i < numstring; i++) {
        //ERROR HAPPENING IN THIS CODE BELOW!!!
        stringarray[i] = inputAlphaString();
    }


    numScan.close();
}

public static String inputAlphaString(Scanner aScan) {

    Scanner strScan = new Scanner(System.in);
    String t = "a";
    String hold = "";

    while(t.matches("[a-zA-Z]+")){
        System.out.println("Enter an alphabetic string followed by enter: ");
        t = strScan.nextLine();
        hold = hold + t;
    }
    strScan.close();
    return hold;

}

//added [] into the method name and int to i
public static void printSArray(String[] sArray) {
    for (int i = 0; i <= sArray.length; i++)
            System.out.print(sArray[i] + " ");
    System.out.println();
}


}
打包工作文件;
//乔治·弗拉姆布里斯
导入java.util.*;
公共级Hw3{
专用静态扫描仪numScan;
公共静态void main(字符串[]args){
int numstring=0;
numScan=新扫描仪(System.in);

while(numstring)描述您实际遇到了什么问题,或者您尝试了什么,以及为什么它不起作用。为什么这个
one
是一个字母表:
输入一个字母字符串,然后输入:one
?@AlexR更新了!很抱歉that@PritamBanerjee因为它们应该是字符串而不是int。
inputAlphaString()
需要一个扫描器作为参数,但您没有传递任何内容。您可能应该将其更改为
inputAlphaString(新扫描器(System.in))
描述您实际遇到的问题,或您尝试过的问题以及失败的原因此
one
是字母表:
输入字母字符串,然后输入:one
?@AlexR已更新!抱歉that@PritamBanerjee因为它们应该是字符串而不是int。
inputAlphaString()
作为参数需要一个扫描器,但您没有传递任何内容。您可能应该将其更改为
inputAlphaString(新扫描器(System.in));