Java中怎么读入一行输入空格隔开的多个数据

 我来答
兔丞飞
高粉答主

2018-12-15 · 专注娱乐 专注娱乐 专注娱乐
兔丞飞
采纳数:25 获赞数:19893

向TA提问 私信TA
展开全部

import java.util.Scanner;

public class ReadData{

public static void main(String[] args) {

ReadData r=new ReadData();

Scanner input=new Scanner(System.in);

//Scanner input=new Scanner("abc 123 bb ss");

String s=input.nextLine();

String[] arr=s.split(" ");

System.out.println(arr.length+"\t"+arr[0]);

}

}

扩展资料

Scanner sc = new Scanner(System.in);

String inputString = sc.nextLine();

String stringArray[] = inputString.split(" ");

int num[] = new int[stringArray.length];

for (int i = 0; i < stringArray.length; i++) {

num[i] = Integer.parseInt(stringArray[i]);

}



0动感蚂蚁0
2015-07-23 · TA获得超过391个赞
知道小有建树答主
回答量:177
采纳率:100%
帮助的人:125万
展开全部
public class Test {
public static void main(String[] args) throws ParseException {
Scanner scanner= new Scanner(System.in);
String str = scanner.nextLine();
System.out.println(str);
}
}

可以参照示例代码。如果你希望将读入的字符串按照空格区分放入到一个数组中

那么调用str.split(' ');就可以了。

Scanner包含多个方法,比如常用的

scanner.next()   读取下一个字符串,遇到空格就不在读入

scanner.nextLine()读取下一行

其他的方法都不常用

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
tianzund
2014-11-21 · 超过13用户采纳过TA的回答
知道答主
回答量:36
采纳率:0%
帮助的人:24.1万
展开全部
String str = "1 2  3   4";

   str = str.replaceAll("\\s*", " ").replaceFirst("\\s", "");

   String[] strArry = str.split(" ");

   List<String> result = new ArrayList<String>();

   for (int i = 0 ; i < strArry.length ; i++) {

    if (strArry[i].length() > 0 && strArry[i] != null) {

     result.add(strArry[i]);

    }

   }

   for (String resultStr : result) {

    System.out.println(resultStr);

   }

适用多个空格分隔时,试试看

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wjl1073330674
2014-11-21 · 超过23用户采纳过TA的回答
知道答主
回答量:47
采纳率:0%
帮助的人:43.9万
展开全部
举个简单例子如:
import java.util.Scanner;
public class ReadData{
public static void main(String[] args) {
ReadData r=new ReadData();
Scanner input=new Scanner(System.in);
//Scanner input=new Scanner("abc 123 bb ss");
String s=input.nextLine();
String[] arr=s.split(" ");
System.out.println(arr.length+"\t"+arr[0]);
}
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2014-11-21
展开全部
String str = "balba oz";
String[] strs = str.split("\\s+");/*正则表达式,参数是一个正则表达式的字符串*/
没编译,不过写了好多遍了,应该没错
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式