java选中一格_java-选中排序(新手)
//排序 選擇排序 數(shù)組中每個(gè)元素都進(jìn)行比較
public class Test {
//公共靜態(tài)的主方法。
public static void main(String[] args) {
//創(chuàng)建一個(gè)數(shù)組。
int[] arr = {12,69,852,25,89,588};
// ?下標(biāo)為 ?0 ? ?1 ? 2 ? ?3 ? 4 ? 5
//排序。
selectS(arr);
//遍歷。
printS(arr);
}
//調(diào)用排序的方法,對(duì)數(shù)組進(jìn)行排序。
public static void selectS(int[] arr){
//創(chuàng)建for循環(huán)。
for(int i=0;i
//嵌套for循環(huán)。
for(int j =i+1;j
if(arr[i]>arr[j]){
int tmp=arr[i];
arr[i]=arr[j];
arr[j]=tmp;
}
}
}
}
//遍歷打印。
public static void printS(int[] arr){
for (int i = 0; i < arr.length; i++) {
System.out.println(arr[i]);
}
}
}
============分割線===========
ex:
int[] arr = {12,69,852,25,89,588};
12 69
12 ? ?852
12 ? ? ? ? ?25
12 ? ? ? ? ? ? ? 89
12 ? ? ? ? ? ? ? ? ? 588
69 852 25
25 ? ? ? ? ? ?89
25 ? ? ? ? ? ? ? ? 588
852 ?69
69 ?89
69 ? ? ? 588
852 ?89
852 588
結(jié)果就是: 12 25 69 89 588 852
在第一個(gè)for循環(huán)里,i=0,意思即為下標(biāo)為零的數(shù)組內(nèi)的數(shù)值。
j = i+j,意思即為0+1,也就是下標(biāo)為一的數(shù)組內(nèi)的數(shù)值。
如果說(shuō)下標(biāo)為零的數(shù)大于下標(biāo)為一的數(shù),就運(yùn)行下面排序的代碼。但是如果
不大于,那么就不循環(huán),在這個(gè)基礎(chǔ)上再加1,繼續(xù)做比較,意思就是
這個(gè)i=0,如果說(shuō)j的循環(huán)不結(jié)束,那么,就一直是零。
只有在j的循環(huán)結(jié)束之后,i也就是第一個(gè)下標(biāo)才會(huì)更改成1,以此下推。
當(dāng)下標(biāo)為零的數(shù)值和數(shù)組內(nèi)的所有數(shù)值都比較完之后,那么就是i更變的時(shí)候
之所以在for循環(huán)里加入了一個(gè)新值:int temp、是方便數(shù)值的互換。
ex:
int tmp=arr[i];
arr[i]=arr[j];
arr[j]=tmp;
打個(gè)比方說(shuō),你有兩只手,每個(gè)手都拿了一個(gè)杯子,這兩個(gè)杯子都是滿的,但是
你想把左手杯的水倒在右手杯子里,這個(gè)時(shí)候,這個(gè)新值,就相當(dāng)于別人遞過(guò)來(lái)
一只手,手里拿了一個(gè)空杯子,這樣你是不是就可以對(duì)兩個(gè)杯子里的水進(jìn)行互換
了?
《新程序員》:云原生和全面數(shù)字化實(shí)踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀總結(jié)
以上是生活随笔為你收集整理的java选中一格_java-选中排序(新手)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: java实现责任链模式_我的Java设计
- 下一篇: java socket绑定ip_Serv