Java 如何使扫描器读取乘法数字并打印它们而不必向下一行
我是java新手,我正在尝试编写以下代码: 用户逐个输入数字,代码需要立即打印每个数字,并继续接收同一行的下一个数字 这是我目前的代码:Java 如何使扫描器读取乘法数字并打印它们而不必向下一行,java,Java,我是java新手,我正在尝试编写以下代码: 用户逐个输入数字,代码需要立即打印每个数字,并继续接收同一行的下一个数字 这是我目前的代码: Scanner user = new Scanner(System.in); String value = user.nextLine(); String matrix = ""; int point = 0; int pos = 0; while(pos <
Scanner user = new Scanner(System.in);
String value = user.nextLine();
String matrix = "";
int point = 0;
int pos = 0;
while(pos <= 5)
{
if(isInteger(value))
{
System.out.print(matrix.substring(point) + "\t");
matrix = matrix + value+",";
point+=2;
pos++;
}
else
{
System.out.print("Not a number");
}
value = user.next();
}
我想这样做:
1 2 3 4 5
有没有办法让扫描仪读取另一个数字,并且仍然保持在同一行?您必须使用
nextInt()
而不是指定的nextLine()
,请尝试以下方法:
public static void main(String args[]) {
Scanner scanner = new Scanner(System.in);
System.out.println("Type in all your numbers and hit return");
while (scanner.hasNext()) System.out.println(scanner.next());
}
用户在一行中插入所有数字。然后扫描输入,每个整数扫描一个整数,然后打印它们。作为分隔符,我使用空格。在这里,您可以在一行中输入所有数字,并按enter键,输出将在一行中。请查看
int num;
int pos = 0;
Scanner scanner = new Scanner(System.in);
System.out.println("Type all the integers and hit return :");
while (pos < 5) {
if(scanner.hasNextInt()) {
num = scanner.nextInt();
System.out.print(num + "\t");
pos++;
} else {
scanner.next();
System.out.print("Not an integer number! ");
}
}
int-num;
int pos=0;
扫描仪=新的扫描仪(System.in);
System.out.println(“键入所有整数并点击返回:”);
while(pos<5){
if(scanner.hasNextInt()){
num=scanner.nextInt();
系统输出打印(num+“\t”);
pos++;
}否则{
scanner.next();
System.out.print(“不是整数!”);
}
}
例子:
输入:12345
产出:12345
输入:123M5
输出:1 2 3不是整数!5不会消耗换行符,但当用户用IMO@ifLoopnextInt返回int,因此首先他必须输入
123445(输入字符)
,但是他的程序之后会在一行中打印出123445
所有内容,末尾没有换行符。但是每次我在程序运行时向扫描仪输入另一个数字时,它就会转到下一行,听起来好像OP希望在键入时一个接一个地读取它们,当用enter确认时不是。@ifLoop yes和他的问题将通过使用nextInt()
解决,因为它将返回一个不带换行符的整数。他目前的解决方案是读取输入的整个字符串。如果他切换到nextInt()
并打印int而不是String,那么他将不会包含换行符。也许会给你一些提示。
int num;
int pos = 0;
Scanner scanner = new Scanner(System.in);
System.out.println("Type all the integers and hit return :");
while (pos < 5) {
if(scanner.hasNextInt()) {
num = scanner.nextInt();
System.out.print(num + "\t");
pos++;
} else {
scanner.next();
System.out.print("Not an integer number! ");
}
}