So erstellen Sie ein String-Array und verbinden Sie es mit einer Klasse array
Habe ich ein Projekt, dass ich erstellen muss 2 Arrays, eins zu halten schülernamen und halten Sie die schülerergebnisse. Die Eingaben des Benutzers die Größe des Arrays, und das array muss sortiert mit BubbleSort (wenn man die hohe erreicht souverän an der Spitze). Ich habe angefangen, das Projekt, erstellt das erste array für die Noten, habe ich erfolgreich getan bubble-sort sortiert und den Noten. Jetzt kann ich nicht herausfinden, wie man ein array für die Namen, und sobald ich tun, wie mache ich das names-array entsprechen, sind die Noten-array mit BubbleSort?
Hier ist der code, den ich bisher haben.
import java.util.Scanner;
public class Grades {
public static void main(String[]args){
{
Scanner GradeIn = new Scanner(System.in);
Scanner NameIn = new Scanner(System.in);
System.out.print( "How many students are there? " );
int[]GradeArray = new int[GradeIn.nextInt()];
String[]nameArray = new String[GradeIn.nextInt()];
for( int i=0 ; i<GradeArray.length ; i++ )
{
System.out.print( "Enter Grade for Student " + (i+1) + ": " );
GradeArray[i] = GradeIn.nextInt();
System.out.print( "Enter Name of Student " + (i+1) + ": " );
nameArray[i] = NameIn.nextLine();
}
bubbleSort(GradeArray, nameArray);
for( int i : GradeArray ) System.out.println( i );
System.out.println();
}
}
private static void bubbleSort(int[]GradeArray, String[] nameArray){
int n = GradeArray.length;
int temp = 0;
String temp2;
for(int i=0; i<n; i++){
for(int j=1; j<(n-i);j++){
if(GradeArray[j-1]<GradeArray[j]){
//swap
temp=GradeArray[j-1];
GradeArray[j-1]=GradeArray[j];
GradeArray[j]=temp;
temp2=nameArray[j-1];
nameArray[j=1]=nameArray[j];
nameArray[j]=temp2;
}
}
}
}
}
Auch wie ändere ich die Noten Doppelt? Ich begann mit Int und wenn ich versuche, alles zu ändern, um doppelte bekomme ich eine Fehlermeldung mit dem Inhalt "Gefunden Verdoppeln, erwartet Int".
Was der Professor fragt nach:
Schreiben Sie ein Programm, das den Benutzer auffordert, um die Anzahl der Studierenden, die Studierenden mit Namen, und Ihre Noten, und druckt die Namen in absteigender Reihenfolge nach Ihrer erzielt.
ZUSÄTZLICHE INFO:
Müssen Sie zwei arays. Halten Saiten. Andere halten die Studierenden erzielt. (Doppelzimmer)
Die Größe des arrays wird durch den Benutzer eingegeben werden.
Haben Sie zum Sortieren der arrays in der main () - Methode. Ich empfehle, mit dem BubbleSort (http://www.java-examples.com/java-bubble-sort-example), die aber nicht als separate Methode. HINWEIS: Beim Sortieren der Noten array, müssen Sie die Sortierung der Namen-array entsprechend die Noten.
Werden und schließlich sollte eine Methode (void printAnswer(String [] names)) zum drucken den Namen array, nachdem es sortiert wurde.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Stellen Sie ein benutzerdefiniertes Objekt. Dies ist die gesamte Idee der objektorientierten Programmierung. Sie müssen nicht ein Namen und ein Grad, Sie haben eine
Student
wer hat einen Namen und einen Rang. Dann Bearbeiten die Schüler in irgendeiner Weise sehen Sie fit.Dann, wo Sie haben
Tun Sie dies:
Lasse ich den rest der änderungen, die sich als eine übung für Sie zu get verwendet, um, wie es funktionieren sollte. Obwohl, denken Sie daran, dass ein
Student[]
ist voll vonnull
, Lesen Sie in den Daten, die Sie haben, um einenew Student(name, grade)
jeder Zeit.Alternative Lösung
Das obige ist der richtige Weg, dies zu tun. Nicht alles lernen aus der unten beantworten, weil es Niederlagen der ganze Zweck von Java zu lernen. Ich würde die E-Mail-professor, wenn die oben genannte Lösung ist akzeptabel.
That being said, wie Sie jede Note tauschen, Sie könnten tun genau das gleiche-swap in der
String name
array, d.h.Wieder, TUN Sie DIES NICHT IN DER REALEN WELT, SOBALD SIE NICHT MEHR IN der SCHULE. Es ist VIEL LANGSAMER und viel mehr verwirrend.