亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

輸出為什么不是[91,89,73],而是[0,0,73]?那兩個0是怎么回事?

import java.util.Arrays;
public class HelloWorld {
?? ?
??? public static void main(String[] args) {
??????? int [] scores=new int[]{89,-23,64,91,119,52,73};
??????? HelloWorld a = new HelloWorld();
??????? a.b(scores,3);
??? }
?? ?
??? public void b(int[]scores,int number){
??????? int j=0;
???? Arrays.sort(scores);
??????? for(int i=scores.length-1;i>=0;i--){
??????????? if(scores[i]<0||scores[i]>100){
??????????????? continue;
????????????? }else{
????????????? j++;
????????????? int [] three=new int[number];
????????????? System.out.println(j-1);
????????????? System.out.println(scores[i]);
????????????? three[j-1]=scores[i];
????????????? if(j==3){
???????????????? System.out.println(Arrays.toString(three));
???????????????? break;
????????????? }
??????????? }
?????????? ?
??????? }
??? }????????????????? ?
}

正在回答

1 回答

把int [] three=new int[number];放在?for循環外面就正確了。因為每次循環都重新定義數組three,并把之前的值覆蓋,所以前面兩個元素都為0。

1 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

輸出為什么不是[91,89,73],而是[0,0,73]?那兩個0是怎么回事?

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號