java小白求大神指導(dǎo)。。求考試前三名成績(jī)。。
package?com.imooc; import?java.util.Arrays;//引入Arrays類 public?class?Grade?{ ?public?static?void?main(String[]?arags){ int[]grades={89,-23,64,91,119,52,73}; ?Grade?grade=new?Grade(); grade.compare(grades); ?} public?void?compare(int[]Arrays1){ ?int?j=0; ?int[]Arrays2={0}; ?for(int?i=0;i<Arrays1.length;i++){ ??while(Arrays1[i]>=1&&Arrays1[i]<=100){ ???Arrays2[j++]=Arrays1[i]; ??} ?} ?Arrays.sort(Arrays2); ?for(int?k=0;k<3;k++){ ??System.out.println("考試成績(jī)前三名為:"+Arrays2[k]); ?} } }
2016-12-01
啊,還忘了一點(diǎn),Arrays.sort 對(duì)數(shù)據(jù)進(jìn)行的是升序排序,從小到大排列,所以你在輸出成績(jī)是要倒過來輸出,從數(shù)組最后一個(gè)元素開始輸出
2016-12-01
你聲明Arrays2時(shí),使用int [] Arrays2=new int[] {0}; 這樣Arrays2是個(gè)只有一個(gè)元素的數(shù)組,后面無法賦值,你應(yīng)該聲明為int [] Arrays2=new int[Arrays1.length] ; (JAVA對(duì)于聲明的變量默認(rèn)值都是0,所以不用在特意賦值為0)