package com.xuz.csdn.worldcup.day2;import java.util.Arrays;public class NumberSort { public static void main(String[] args) { String s = "1,2,3,4,5,6,7,10,100"; String[] arr = s.split(","); int[] arr2 = new int[arr.length]; for (int i = 0; i < arr2.length; i++) { arr2[i] = Integer.parseInt(arr[i]); } Arrays.sort(arr2);//排序 for (int i : arr2) { System.out.println(i); } }} 查找用二分吧,因为已经排序了。
int testvalue =9; int low=0; int upp=arr2.length-1; int index=-1; while(low<=upp){ int mid = (low+upp)/2; if(arr2[mid]>testvalue){ upp--; }else if(arr2[mid]<testvalue){ low++; }else if(arr2[mid]==testvalue){ index=mid; break; } } if(index==-1){ System.out.println("cannot found : "+testvalue); }else System.out.println("value is: "+arr2[index]);
String str = "1,2,3,4,5,6,7,8,9,10";
List strList = new ArrayList(Arrays.asList(str.split(",")));
for(int i=0;i<strList.size();i++){
System.out.println(strList.get(i));
}
就样就行了
String[] arr = s.split(",");
Arrays.sort(arr);//排序
//输入你想找的数字:
String searchNum = new Scanner(System.in).next();
for(String str : arr){
if(searchNum.equals(str)){
System.out.println(str);
break;
}
}
不行啊。必须要转成int进行比较,不然10就比2小了。
package com.xuz.csdn.worldcup.day2;import java.util.Arrays;public class NumberSort { public static void main(String[] args) {
String s = "1,2,3,4,5,6,7,10,100";
String[] arr = s.split(",");
int[] arr2 = new int[arr.length];
for (int i = 0; i < arr2.length; i++) {
arr2[i] = Integer.parseInt(arr[i]);
}
Arrays.sort(arr2);//排序
for (int i : arr2) {
System.out.println(i);
}
}}
查找用二分吧,因为已经排序了。
int low=0;
int upp=arr2.length-1;
int index=-1;
while(low<=upp){
int mid = (low+upp)/2;
if(arr2[mid]>testvalue){
upp--;
}else if(arr2[mid]<testvalue){
low++;
}else if(arr2[mid]==testvalue){
index=mid;
break;
}
}
if(index==-1){
System.out.println("cannot found : "+testvalue);
}else
System.out.println("value is: "+arr2[index]);