java - 如何在单个输入中输入超过两个单词的字符串?
问题描述
我想输入一个像美国韩国日本这样的字符串
并希望将其存储在数组中。我可以为具有一个单词名称的国家/地区执行此操作,但对于具有多个单词的文本,例如如何添加韩国 nextLine() 不起作用,我这样做了。
String c=new String[2];
for(int i=0;i<3;i++)
{
c=sc.next(); //taking one word
//tried sc.nextLine() also;
}
解决方案
尝试这个:
String c= null;
c=sc.nextLine();
String[] split = c.split(" ");
for(String x : split)
System.out.println(x);
输出 :
america south korea japan
america
south
korea
japan
您正在将字符串数组分配给字符串变量。
字符串 c = 新字符串 [2]; 初始化错误
字符串[] c = 新字符串[2]; 是正确的初始化
如果你想尝试使用数组试试这个代码:
Scanner sc = new Scanner(System.in);
String[] c= new String[3];
for(int i=0;i<3;i++) {
c[i]=sc.nextLine();
}
for(String x : c)
System.out.println(x);
}
输出 :
america
South Korea
Japan
america
South Korea
Japan
推荐阅读
- c# - 为什么winform用户控件调整大小事件是触发事件没有任何调整大小命令
- python - Python:如何按日期按时间顺序排序并找到任何空白
- c - 修改程序以在 C 中作为命令行参数运行
- google-cloud-platform - 为 GCP 中的现有资源生成 Jinja/YAML 模板
- python - 使用 python 和 pandas 将数据从 teradata 事务表解析到另一个表
- javascript - 使用 forloop 获取值
- c++ - 添加所需库后使用 TShark C++ 源文件剖析消息时未定义的引用
- java - Sentry Android - 构建发布 apk 时出现问题
- django - Spring MVC 和 Django
- c# - 当我在 C# 中使用“While”时,我不想打印最后一个计算