use*_*841 6 java delimiter java.util.scanner
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);
}
}
Run Code Online (Sandbox Code Playgroud)
当我的输入是1 2 3(用空格分隔)时,这个程序工作正常但是,当我的输入是1,2,3(用逗号分隔)时,如何修改我的程序
Men*_*ena 14
您可以对非数字项使用分隔符,这将将任何非数字标记为分隔符.
如:
dis.useDelimiter("\\D");
Run Code Online (Sandbox Code Playgroud)
该useDelimiter方法采用a Pattern或a 的String表示Pattern.
完整示例:
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();
Run Code Online (Sandbox Code Playgroud)
输入(或者)
1,2,31 2 3产量
1 2 3
Run Code Online (Sandbox Code Playgroud)
注意
您可以使用nextLine方法读取String并使用方法split将逗号分隔如下:
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);
}
Run Code Online (Sandbox Code Playgroud)
此方法将使用仅以逗号分隔的3个值.
如果需要更改值的数量,可以使用循环从向量中获取值.
| 归档时间: |
|
| 查看次数: |
37185 次 |
| 最近记录: |