如何在java中读取逗号分隔的整数输入
当我的输入为1 2 3(以空格分隔)时,此程序工作正常如何在java中读取逗号分隔的整数输入,java,java.util.scanner,delimiter,Java,Java.util.scanner,Delimiter,当我的输入为1 2 3(以空格分隔)时,此程序工作正常 但是,当我的输入为1,2,3(用逗号分隔)时,如何修改我的程序您可以对非数字项使用分隔符,它会将任何非数字标记为分隔符 例如: import java.io.*; import java.util.*; class usingDelimiters { public static void main(String args[]) { Scanner dis=new Scanner(System.in);
但是,当我的输入为1,2,3(用逗号分隔)时,如何修改我的程序您可以对非数字项使用分隔符,它会将任何非数字标记为分隔符 例如:
import java.io.*;
import java.util.*;
class usingDelimiters
{
public static void main(String args[])
{
Scanner dis=new Scanner(System.in);
int a,b,c;
a=dis.nextInt();
b=dis.nextInt();
c=dis.nextInt();
System.out.println("a="+a);
System.out.println("b="+b);
System.out.println("c="+c);
}
}
usedimiter
方法采用模式
或字符串
表示模式
完整示例:
dis.useDelimiter("\\D");
输入(或)
1,2,3
123
Scanner dis=new Scanner(System.in);
dis.useDelimiter("\\D");
int a,b,c;
a=dis.nextInt();
b=dis.nextInt();
c=dis.nextInt();
System.out.println(a + " " + b + " " + c);
dis.close();
注意
- 不要忘记关闭
李>扫描仪
- 请参阅for
s,了解分隔输入的更多乐趣李>模式
1 2 3
此方法仅适用于以逗号分隔的3个值
如果需要更改值的数量,可以使用循环从向量中获取值。逗号分隔整数==逗号分隔值==CSV==使用OpenCSV?手是可以的,如果它是玩具代码,但为了认真工作,考虑使用OpenCsv。
public static void main(String args[])
{
Scanner dis=new Scanner(System.in);
int a,b,c;
String line;
String[] lineVector;
line = dis.nextLine(); //read 1,2,3
//separate all values by comma
lineVector = line.split(",");
//parsing the values to Integer
a=Integer.parseInt(lineVector[0]);
b=Integer.parseInt(lineVector[1]);
c=Integer.parseInt(lineVector[2]);
System.out.println("a="+a);
System.out.println("b="+b);
System.out.println("c="+c);
}