課程
/后端開發
/Java
/Java入門第一季(IDEA工具)升級版
數組的定義為什么不能放在自定義的方法里面,而要放在main方法里面?代碼如下,
2018-04-29
源自:Java入門第一季(IDEA工具)升級版 7-1
正在回答
不是數組放哪的問題,是整個程序邏輯有問題
import?java.util.*; public?class?HelloWorld?{ ???? ????//完成?main?方法 ????public?static?void?main(String[]?args)?{ ????????HelloWorld?hw?=?new?HelloWorld(); ????????int[]?scores?=?{89,-23,64,91,119,52,73}; ????????hw.Sort(scores); ???????? ????} ???? ????//定義方法完成成績排序并輸出前三名的功能 ????public?void?Sort(int[]?scores){ ????????int[]?newSocres?=new?int[scores.length]; ????????int?length?=0; ????????for(int?i=0;i<scores.length;i++) ????????????if(scores[i]>=0?&&?scores[i]<=100) ????????????????newSocres[length++]?=?scores[i]; ????????Arrays.sort(newSocres); ????????System.out.println("考試成績的前三名為:"); ????????for(int?i=newSocres.length-1;i>=newSocres.length-3;i--) ????????????System.out.println(newSocres[i]); ????} ???? ???? ???? ???? ???? ???? ???? ???? ???? }
我不太冷 提問者
重新開一樓吧,我們的目的是要求出符合條件的前三名的成績,因為初始定義的數組有不符合條件([0,100])的成績,所以我們重新開個數組來保存"[0,100]的成績",也就是newScores,然后我們再從newScores找出前三名的成績,由于sort默認是升序排列,所以我們需要對newScores數組中的元素逆序輸出。數組放哪不重要,如果放里面的話也可以啊
import?java.util.*; public?class?HelloWorld?{ ????? ????//完成?main?方法 ????public?static?void?main(String[]?args)?{ ????????HelloWorld?hw?=?new?HelloWorld(); ????????hw.Sort(); ????} ????? ????//定義方法完成成績排序并輸出前三名的功能 ????public?void?Sort(){ ????????int[]?scores?=?{89,-23,64,91,119,52,73};???//初始化數組 ????????int[]?newSocres?=new?int[scores.length];???//存儲符合條件的數組 ????????int?length?=0;????//由于不一定每個數都符號條件,用個變量存儲符號條件的數的個數 ????????for(int?i=0;i<scores.length;i++)??//遍歷初始化數組,將其中符號條件的數組存到newSocres ????????????if(scores[i]>=0?&&?scores[i]<=100) ????????????????newSocres[length++]?=?scores[i]; ????????Arrays.sort(newSocres);?//對符號條件的數組排序 ????????System.out.println("考試成績的前三名為:"); ????????for(int?i=newSocres.length-1;i>=newSocres.length-3;i--)??//逆序輸出 ????????????System.out.println(newSocres[i]); ????}
你看,兩種代碼都是可以的,區別在于,如果在主函數中定義數組,在Sort方法實現時就需要將主函數的數組傳遞過去;如果在Sort方法定義數組,可以直接在方法中用。
望采納
舉報
0基礎萌新入門第一課,從Java環境搭建、工具使用、基礎語法開始
5 回答新手求解答!
2 回答求解答新手問題
2 回答新手求解答啊
1 回答新手求解?
4 回答求解答,新手入門,一點也不懂!
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2018-04-29
不是數組放哪的問題,是整個程序邏輯有問題
2018-04-29
重新開一樓吧,我們的目的是要求出符合條件的前三名的成績,因為初始定義的數組有不符合條件([0,100])的成績,所以我們重新開個數組來保存"[0,100]的成績",也就是newScores,然后我們再從newScores找出前三名的成績,由于sort默認是升序排列,所以我們需要對newScores數組中的元素逆序輸出。數組放哪不重要,如果放里面的話也可以啊
你看,兩種代碼都是可以的,區別在于,如果在主函數中定義數組,在Sort方法實現時就需要將主函數的數組傳遞過去;如果在Sort方法定義數組,可以直接在方法中用。
望采納