我很困惑如何分隔字符串中的数字序列,这些数字由空格分隔并找到它们中的最小值(例如" 4 3 2 1"。)我有分离的想法使用扫描仪并解析它们的值,但我不知道如何使用它们是一个字符串。请帮忙!谢谢!
答案 0 :(得分:2)
String#split()
)Stream#mapToInt()
与Integer#parseInt
然后IntStream#min()
查找最低值例如
final String s = "4 3 2 1";
final int min = Arrays.stream(s.split(" "))
.mapToInt(Integer::parseInt)
.min()
.getAsInt();
答案 1 :(得分:1)
//hope this helps
public static void main(String[] args){
String s = "9 3 4 5 7 3 8 9 3 1";
//split on space
String[] arr = s.split(" ");
int result = Integer.parseInt(arr[0]), temp;
for(int i = 1; i<arr.length; i++) {
temp = Integer.parseInt(arr[i]);
//store lowest in result
if(result>temp)
if(temp<result) {
result = temp;
}
}
//print result
System.out.println(result);
}
答案 2 :(得分:0)
对于拆分您可以使用的字符串(例如):
String str = "4 3 2 1";
String[] splited = str.split("\\s+");
对于数组“splited”中的个别数字,您可以使用
int Num = Integer.parseInt(splited[INDEX]);
或者您可以在IF循环的条件下直接使用Integer.parseInt(Splited[INDEX])
。
int min=Integer.parseInt(splited[0]);
for(int i=1;i<splited.length;i++){
if(min > Integer.parseInt(splited[i])){
min = Integer.parseInt(splited[i]);
}
}
答案 3 :(得分:-1)