# Einlesen einer int und speichern in einem Array



## Eustass_Kid (18. Nov 2009)

Hi,

folgendes Problem. ich willl bei einem Programm n Integer‐Werte einlesen und in einem
Array speichern (n soll vom Benutzer bestimmt werden). Wie krieg ich das hin?

LG und danke


----------



## KrokoDiehl (18. Nov 2009)

Grob gesagt:

1) Du überlegst dir eine Schnittstelle zu deinem Benutzer.
2) Du überlegst dir, in welcher Art (abh. von dieser Schnittstelle) der Benutzer seine Eingaben tätigen soll.
3) Du programmierst das.

Beispiel:
-1): Via Konsole
-2): Fragen nach _n_, dann _n_-mal Einlesen einer Zahl.


----------



## Eustass_Kid (18. Nov 2009)

Also:
Mit Schnittstelle meinst du dann sowas?

b=In.readInt();

Jetzt kann der Benutzer schon mal was eingeben...

Aber wie schaff ich's, dass wenn er z.b. 12 eingibt, ich dann a[12] herausbekomm?


```
int a[], b=In.readInt();
		
		Out.println(a[b]);
```

So hätt ich gedacht, geht aber nicht...
LG


----------



## Der Müde Joe (18. Nov 2009)

Im falle der Konsole solltes du diese Klasse mal angucken:
Scanner (Java Platform SE 6)

EDIT:
>Mit Schnittstelle meinst du dann sowas?

Er meinte User2PC Schnitsstelle. zB GUI mit buttons, Konsole, Telepathie...


----------



## Sempah (18. Nov 2009)

- du fragst den Benutzer, wie groß n sein sollst und speicherst es dir in einer Var zwischen
- dann erstellst du ein Array mit dieser Größe
- danach gehst du das Array von i = 0 bis i < array.length durch, liest die Eingaben vom Benutzer und speicherst sie in array


----------



## Eustass_Kid (18. Nov 2009)

```
{
		int a[];
		int b=In.readInt(); //Benutzer gefragt wie groß n sein soll und in Variable zwischengespeichert
		a[b]; //Array mit dieser Größe erstellt
		for(int i=0;i<a.length;i++) //Array von i=0 bis i<array.length durchgegangen
			a[b]=a[i]; //Als a[i] gespeichert
	
			}
```

Ich hab nen Denkfehler irgendwo, nicht wahr...?


----------



## Michael... (18. Nov 2009)

Eustass_Kid hat gesagt.:


> ```
> {
> int a[];
> int b=In.readInt(); //Benutzer gefragt wie groß n sein soll und in Variable zwischengespeichert
> ...


Zeile 4 --> a = new int*;
und in der Schleife musst Du wieder den Benutzer abfragen und dann a mit den eingelesenen Werten befüllen.*


----------



## Der Müde Joe (18. Nov 2009)

```
// create a Scanner to read from System.in (Shell)
Scanner scanner = new Scanner(System.in);
// give some nice bla
System.out.println("How many numbers to read?");
// read a number
int numbersToRead = scanner.nextInt();
// Arrays erstellt man immer mit new!!
int[] numbers = new int[numbersToRead]; 
// some bla
System.out.println("So go on my friend:");
//read x numbers
```


----------

