请教各位大神,同一个题目有两种实现方法,这两个方法有什么具体区别吗?比如说内存方面~~
题目是这样的:
给定的字符串是: "91 27 -45 46 38 50"
最终输出结果是: "-45 27 38 46 50 91"
第一种实现方法:
public class Demo {
public static void main(String[] args) {
String str="91 227 23 -45 46 38 50";
String[] snum=str.split(" ");//使用空格来把字符串分割成字符数组
int[] arr = new int[snum.length];
for (int i = 0; i < arr.length; i++) {
arr[i]= Integer.parseInt(snum[i]);
}
Arrays.sort(arr);
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i]+" ");
}
}
}
第二种方法:
public class Demo {
public static void main(String[] args) {
String str="91 227 23 -45 46 38 50";
String[] snum=str.split(" ");//使用空格来把字符串分割成字符数组
Integer[] numInt=new Integer[snum.length];
for(int i=0;i<snum.length;i++){
numInt[i]=Integer.parseInt(snum[i]); //使用Integer的静态方法,把snum[i]数组变为Integer对象,并赋值给Integer对象。
}
Arrays.sort(numInt);
for (int j = 0; j < numInt.length; j++) {
System.out.print(" "+numInt[j].toString());
}
}
|
|