Zunächst tut mir leid, wenn es im Titel dieser Frage einen Fehler gibt. Ich weiß einfach nicht, wie ich das in eine Frage stellen soll. Der folgende Code würfelt tausendmal und zeigt an, wie oft eine Zahl auf den Würfeln geworfen wird. Ich möchte den Index der größten Zahl nicht das Element drucken.Drucken des Index eines Array-Elements nach dem Auswählen des größten Elements
import java.util.Random;
public class apples {
public static void main(String args[]){
Random rand = new Random();
int a[] = new int[7];
for(int i = 1; i<1001; i++){
++a[rand.nextInt(6) + 1];
}
System.out.println("Roll\tTimes");
for(int j=1; j<a.length; j++){
System.out.println(j + "\t\t" + a[j]);
}
int max = a[0];
for (int i : a) {
if (max < i) {
max = i;
}
}
System.out.println("The winning number is " + max);
}
}
EDIT:
Ich dachte, wie der Index zu bekommen, aber ist es ein einfacher Weg, es zu tun?
import java.util.Random;
public class apples {
public static void main(String args[]){
Random rand = new Random();
int a[] = new int[7];
int winner = 0;
for(int i = 1; i<1001; i++){
++a[rand.nextInt(6) + 1];
}
System.out.println("Roll\tTimes");
for(int j=1; j<a.length; j++){
System.out.println(j + "\t\t" + a[j]);
}
int max = a[0];
for (int i : a) {
if (max < i) {
max = i;
}
}
for(int j=0; j<a.length; j++){
if(max==a[j]){
winner = j;
}
}
System.out.println("The winning number is " + winner);
}
}
als foreach zu einer normalen for-Schleife neu schreiben. Anstatt den Wert des Arrays an einem gegebenen Punkt im Maximum zu speichern, speichern Sie den Index dort und vergleichen Sie ihn mit dem Wert im Index, in dem sich Ihr aktuelles Maximalwert befindet, anstatt mit der Zahl zu vergleichen. – SomeJavaGuy
Ich habe eine andere Schleife mit einer if-Anweisung geöffnet, um zu prüfen, ob der Wert von max einem Array-Element entspricht und dann den Index einer anderen Variablen zugewiesen und dann ausgedruckt hat. Aber gibt es noch eine andere Möglichkeit? –
Mögliches Duplikat von [Wie kann ich den Index eines Maximalwertes in einem Array finden und drucken?] (Http://stackoverflow.com/questions/8991103/how-can-i-locate-and-print-the-index -of-a-max-Wert-in-einem-Array) –