Eingabe in Array speichern und Ausgeben

KuchenBoss

Mitglied
Hi Leute.

Ich lerne gerade etwas (bin noch ziemlich frisch in Java) und hab mir die Aufgabe rausgesucht, dass ich eine Zahl eingeben soll (Die größe der Zahl bestimmt auch wie groß das Array ist) und dann soll er es danach wieder ausgeben.

Als Beispiel:
Code:
Geben Sie Zahlen ein:
5
13
7
1
6
Ihr Eingabe war:
5, 13, 7, 1, 6
So in etwa soll das ganze Aussehen...

Ich weiß nur nicht ganz, wie ich da weiter rangehen soll. Also mein Text bis dahin ist:
Java:
        int x = IOTools.readInt("Geben Sie 5 Zahlen ein ein: "  );
        int[] meinArray = new int[5]; //Er soll die Zahlen in ein Array speichern
        meinArray[x] //ich hab vielleicht an sowas gedacht?
        for(int i=0; i<meinArray.length; i++ )
        {     
         
        System.out.println("Ihre Eingabe war: " + meinArray ); }
     
        }
Mein Problem dabei ist, dass ich nicht weiß, wie ich ihm sagen kann, dass man mehrere Zahlen gleichzeitig eingeben kann und er die dann in einem Array speichert und dann später wieder ausgibt.
 
Zuletzt bearbeitet von einem Moderator:
Mein Problem dabei ist, dass ich nicht weiß, wie ich ihm sagen kann, dass man mehrere Zahlen gleichzeitig eingeben kann
Gar nicht. (zmd. nicht ohne weitere, nicht triviale, Funktionen zu verwenden).

Du kannst den Nutzer doch auch einfach 5 mal eine Zahl eingeben lassen und die eingegebenen Werte in das Array an die passende Stelle speichern. ( Tipp: Schleife).
 
Ja aber wie mache ich das? Also ich könnte es mir nur sehr umständlich vorstellen, wo ich 5mal ein readInt benutze und den Nutzer halt 5mal nach einer Eingabe frage und die Arrays dann manuell mit einer Variablen speichern kann...

So nach der Art

int a = IOTools.readInt("Zahl eingeben: ");
int b = IOTools.readInt("Eine weitere Zahl eingeben: ");
int c = IOTools.readInt("Eine weitere Zahl eingeben: ");
int d = IOTools.readInt("Eine weitere Zahl eingeben: ");
int e = IOTools.readInt("Eine weitere Zahl eingeben: ");

myArray[0] = a;
myArray[1] = b;
myArray[2] = c;
myArray[3] = d;
myArray[4] = e;

Aber das wäre ja sicher mehr als konterproduktiv, oder? 😀

Ich überlege ganze Zeit, wie ich das als Schleife verpacken könnte...



Ginge da eine for-schleife?

for (int i=0; i=<meinArray.length; i++ ) {

Ab hier hängt es jetzt wieder... Ich weiß nicht wie ich mir das vorstellen kann, wie ich zum Beispiel die zweite Zahl einbinden kann. Die hat doch gar keine Variable oder sonst was, womit ich das mit der Schleife verbinden könnte? Wenn du mich verstehst und weißt, welches Dilemma mein Gehirn hat ^^

Die erste Zahl kann ich mir vorstellen, weil ich die ja vorher mit int x deklariert habe aber woher weiß ich denn wie ich die darauffolgenden verknüpfen kann? ^^
 
Java:
for (int i=0; i<meinArray.length; i++ ) {

}
Sieht doch schon mal gut aus.

Du willst 5 Zahlen einlesen.. als Array-Indizes gesprochen: 0..4
Du weißt auch, dass man einzelne Elemente in einem Array mit den []-Klammern anspricht.. also array[0] = 5.
Du weißt auch wie man eine Zahl einliest.

Dann musst du das doch jetzt nur noch zusammen setzen.
Java:
// array anlegen

for(int i = 0;  i < array.length; i++) {

      // zahl einlesen
      // array an der Stelle i mit der Zahl überschreiben

}
 
Ja, dass ist mein Problem bei Java leider. Ich kenne alle Begriffe etc aber mir mangelt es beim Vorstellungsvermögen, wie ich das alles zusammensetzen soll.

for(int i = 0; i < array.length; i++) {

int x = IOTools.readInt("Zahl eingeben: "); // Dies wäre für Zahl eingeben
int[ i ]myArray = x;

So in etwa?
 
Nein..
myArray[schleifenzähler] = Texteingabe;

Hach, dass ist nicht leicht. 😀

myArray[ i ] = x;

So wäre es dann aber richtig! 😀 Habe es auch gerade in Eclipse eingegeben und endlich dazu mal keine Fehlermeldung bekommen. Bis hierhin, danke. Das ergibt Sinn.

Aber wenn ich es teste, bekommt ich als Ausgabe: "Ihre Eingabe war: [I@5c647e05".

Wo habe ich denn da was falsch? :O
 
Ahhh, jetzt hab ich es. Danke für deine Hilfe. Du hast mir die nötigen Denkanstöße gegeben, die ich gebraucht habe. 😀

Ich wünsche dir noch einen schönen Tag und vielen Dank noch mal. 🙂
 
So wäre es dann aber richtig!
Und ausbaufähig 😉 Mach jedoch Schritt für Schritt

Paar Anmerkungen:
Bitte den Code gleich zu Beginn posten und in Code-Tabs setzen [code=Java]Dein Code[/code]. So kommt man viel schneller ans Ziel. Ebenso eine kurze und klare Problembeschreibung, möglichst samt Aufgabenstellung. Wenn du mehr als nur ein Code postest, mehrere Klassen als Beispiel, wäre der Übersichtlichkeit wegen viel gedient, wenn man die Spoiler-Tabs benutzt(und in diesen wiederum die Code-Tabs).
 

Neue Themen


Zurück
Oben