我要做的是从用户那里获取输入字符串。将它添加到arraylist中,因为我以后必须使用字符。但首先我要打印ArrayList的内容,以便检查它们的确切内容。这是我的代码
public static void main(String[] args)
{
Scanner sc = new Scanner(System.in);
List <String> Vowels = new ArrayList<String>();
System.out.println("What is your string? ");
String abc = sc.nextLine();
int n = abc.length();
for(int i=0; i <= n-1 ; i++)
{
Vowels.add(sc.nextLine());
}
for(int j=0; j< Vowels.size();j++)
System.out.println(Vowels.get(j));
}
没有打印任何内容或没有显示任何错误。我们将非常感谢您的帮助。
答案 0 :(得分:4)
这是你的问题:
for(int i=0; i <= n-1 ; i++)
{
Vowels.add(sc.nextLine());
^
}
“它没有打印任何内容”因为它等待你的输入
您需要的是:
public static void main(String[] args)
{
Scanner sc = new Scanner(System.in);
List <String> Vowels = new ArrayList<String>();
System.out.println("What is your string? ");
String abc = sc.nextLine();
int n = abc.length();
for(int i=0; i < n ; i++)
{
Vowels.add(new StringBuilder().append("").append(abc.charAt(i)).toString());
}
for(int j=0; j< Vowels.size();j++)
System.out.print(Vowels.get(j));
}
输入: Burger
输出: Burger
如果您希望输出为[B, u, r, g, e, r]
,那么只需执行:
System.out.println(Vowels); //without for loop
答案 1 :(得分:0)
根据您在Rafa El评论中的新要求,尝试
abc = "Burger"; // use abc = sc.nextLine();
int n = abc.length();
for(int i=0; i < n ; i++)
{
Vowels.add("" + abc.charAt(i));
}