您的位置:首页 > 编程语言 > Java开发

【总结】关于Java中从键盘读入各种数据的方式

2015-09-27 23:37 555 查看

Part 1

最近在刷一些算法题,里面涉及到了不同形式的数据从键盘进行输入。而java对于键盘输入真心不太方便。于是我把遇到的一些输入形式总结成博文,一方面让大家能参考、交流;另一方面也方便自己查看。

总结的类型并不全面,之后遇到会再加上、更新。

部分代码参考了一些博主的代码,但是出处暂时找不到了,如果有博主看到,可以联系我,我会注明出处的,谢谢。

Part 2

以下根据各种不同的情况来编写。

1)输入不确定个数的数字,每个数字占一行,然后键盘上按回车结束输入。最后把数字放入一个数组中,根据要求进行之后的操作。

public class Case_1 {

public static void main(String[] args) {

Integer[] b;
int m = 0;

Scanner scanner = new Scanner(System.in);
ArrayList<Integer> ns = new ArrayList<>();
do {
String string = scanner.nextLine();
if (string.equals("")) {
break;
}
ns.add(Integer.valueOf(string));
} while (true);

b = (Integer[])ns.toArray(new Integer[0]);
m = ns.size();
// 用输出所有数字的方式去验证是否成功。
for(int i = 0;i < m;i ++)
{
System.out.println(b[i]);
}
}
}


2)输入不确定个数的数组,数与数之间用空格隔开。最后把数字放入一个数组中,根据要求进行之后的操作。

public class Case_1 {

public static void main(String[] args) {

Scanner scanner = new Scanner(System.in);
String str = scanner.nextLine();
String[] numList = str.split("\\s");

int a[] = new int[numList.length];

for(int i = 0; i<numList.length;i++)
{
a[i] = Integer.parseInt(numList[i]);
}
// 用输出所有数字的方式去验证是否成功。
for(int i = 0; i<numList.length;i++)
{
System.out.print(a[i]+" ");
}
}
}


以上是不定长的情况,定长的情况或者开头能输入固定长度的就不叙述了。之后遇到新的情况再补充。如有错误,欢迎指出。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息