java變成對數(shù)組進(jìn)行排序可以使用ArraySort方法,保存源數(shù)組下標(biāo)值可以存入map中,如下代碼:
成都創(chuàng)新互聯(lián)堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都網(wǎng)站設(shè)計(jì)、網(wǎng)站制作、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的祁陽網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
import?java.util.ArrayList;
import?java.util.Arrays;
import?java.util.HashMap;
import?java.util.List;
public?class?ceshi?{
public?static?void?main(String[]?args)?{
int?n?=?5;
int[]?a?=?{?8,?5,?4,?6,?2,?1,?7,?9,?3?};
HashMap?map?=?new?HashMap();
for?(int?i?=?0;?i??a.length;?i++)?{
map.put(a[i],?i);?//?將值和下標(biāo)存入Map
}
//?排列
List?list?=?new?ArrayList();
Arrays.sort(a);?//?升序排列
for?(int?i?=?0;?i??a.length;?i++)?{
list.add(a[i]);
}
for?(Object?object?:?list)?{
System.out.print(object?+?",");
}
System.out.println();
//?查找原始下標(biāo)
for?(int?i?=?0;?i??n;?i++)?{
System.out.print(map.get(a[i])?+?",");
}
}
}
運(yùn)行結(jié)果如下:
首先,API里面寫了: Sorts the specified array of ints into ascending numerical order.
就是這是個(gè)升序!
其次,你這個(gè)運(yùn)行應(yīng)該不會(huì)報(bào)錯(cuò),輸出的會(huì)是 數(shù)組地址,因?yàn)閿?shù)組在java里面是一個(gè)對象,如果要看排序的結(jié)果,需要遍歷下:
比如
for(int i:arr){
System.out.println(i);
}
public?static?void?main(String[]?args)?{
System.out.print("Enter?ten?numbers:?");
Scanner?scanner?=?new?Scanner(System.in);
String[]?input?=?scanner.nextLine().split("?");
SetInteger?numSet?=?new?LinkedHashSet();
for?(int?i?=?0;?i??input.length;?i++)?{
numSet.add(Integer.valueOf(input[i]));
}
System.out.println("The?number?of?distinct?number?is?"?+?numSet.size());
Integer[]?numArray?=?numSet.toArray(new?Integer[]?{});
System.out.print("The?distinct?numbers?are:?");
for?(int?num?:?numArray)?{
System.out.print(num?+?"?");
}
scanner.close();
}