我正在制作一个程序,用户输入他的3号码,然后将这些个别号码与我的号码进行比较。
如何将这些使用输入数字拆分并保存到单个整数?
答案 0 :(得分:2)
String.split()和Integer.parseInt()是您的朋友。
String input = "1 2 3";
String[] spl = input.split(" "); //Or another regex depending on the input format
for (String s : spl) {
System.out.println(Integer.parseInt(s)); // or store them as you like
}
答案 1 :(得分:0)
String input = "12 23 12";
String[] split = input.split(" "); // or "\t" according to need
int[] arr = new int[split.length];
int count = 0;
for(String s:split)
{
arr[count] = Integer.parseInt(s).intValue();
count++;
}
答案 2 :(得分:0)
Java 1.5中添加了一个非常方便的类,名为Scanner
。
这是我的示例程序,它读取String
,找到所有十进制数字并将它们打印到控制台。默认情况下,分隔符是空格。
public static void main(String[] args) {
String userInput = "1 2 3 4 5 6";
try (Scanner scanner = new Scanner(userInput)) {
scanner.useRadix(10);
while (scanner.hasNextInt()) {
int i = scanner.nextInt();
System.out.println(i);
}
}
}
E.g。 String userInput = "1 2 3 4 5 df 6";
//输出1 2 3 4 5
有几个优点:
parseInt
方法,可以抛出未经检查的异常NumberFormatException
。int
(或您选择的任何其他类型)的值File
,InputStream
,Readable
,ReadableByteChannel
,Path
。