我目前有java作業,我將不勝感激一些幫助。我們要計算一個團隊記錄場景。
我們給出以下號碼:
TEAM1點 {23,45,65,20}如何從數組中提取數字
對手點數 {20,30,20,18}
我把這些放到一個數組。我也創建了一個公共布爾值。基本上,你將這些點從數組拉到布爾值?讓布爾決定哪支隊伍贏了?很顯然team1贏了,但我們應該讓計算機決定,而不是人。
這裏是我的代碼:
public class TeamScore {
public static boolean Winner(int team1Points, int opponentPoints) {
if (team1Points > opponentPoints) {
return true;
} else {
return false;
}
}
public static void main(String[] args) {
// Scanner in = new Scanner(System.in);
int[] team1Points = { 23, 45, 65, 20 };
int[] opponentPoints = { 20, 30, 20, 18 };
int team1 = 1;
int opponent = 1;
for (int i = 0; i < 5; i++) {
if (Winner(team1Points[i], opponentPoints[1])) {
team1 += 1;
} else {
opponent += 1;
}
}
for (int i = 0; i < 5; i++) {
if (team1 > 0 && opponent == 0) {
System.out.println("Team 1 has the perfect record!");
} else {
System.out.println("Win" + Arrays.toString(team1Points));
System.out.println("Loss" + Arrays.toString(opponentPoints));
}
}
}
誰能可能幫助我嗎?我目前在編程II,但在編程中我沒有最好的老師。任何幫助將不勝感激!
編輯:
我不認爲這是一個重複的問題,因爲我已經可以通過更改變量i - > 1來解決它。我的問題是,電腦認爲team1已經贏了,不管比分如何。
當我運行代碼時,我得到一個java.lang.ArrayIndexOutOfBoundsException
錯誤。但是,當我將team1Points[i]
更改爲team1Points[1]
時,它會好起來,並告訴我「第1隊有完美的記錄!」。但是,如果我將team1Points
的某些數組值更改爲小於opponentPoints
,那麼它仍然表示「第1隊有完美的記錄!」。
我會使用一個好的縮進來提高可讀性。那些括號不在場所。問題是什麼 ? – AxelH
當我運行代碼時,出現越界錯誤。但是,當我將'team1Points [i]'更改爲'team1Points [1]'時,那麼它會很好,並告訴我''1隊有完美的記錄!'「。但是,如果我將'team1Points'的某些數組值改爲小於'opponentPoints',那麼它仍然會說'「Team 1有完美的記錄!」。我只是想明白這一點。它一直很辛苦:/ –
for(int i = 0; i <5; i ++){'將從'i = 0'循環到'i = 4',但是你有一個4 int的數組[ 0]'到'[3]' – AxelH