# String in ein Int Array umwandeln



## Richart (6. Jan 2011)

Grüß Euch,


ich bin an folgender Aufgabe:


Ich soll ein Programm schreiben, dem ich in der Konsole 2 Arrays übergebe,
die dann eben als String gespeichert werden und die will ich dann im weiteren Verlauf des Programms zu IntArrays konvertieren, so dass ich sie elementweise addieren kann.


Was ich bisher geschrieben habe sieht in etwa so aus:



```
import java.io.*;
public class Addition {

	public static void main(String[] args) {
		
		// Gebe den ersten Vektor in die Konsole ein (String)
		System.out.print("Vektor #1: ");
		try{
			InputStreamReader isr = new InputStreamReader(System.in);
			BufferedReader bur = new BufferedReader(isr);
			
			String a = bur.readLine();
		}catch (IOException e){}
		
		
		// gebe den zweiten Vektor in die Konsole ein (String)
		System.out.print("Vektor #2: ");
		try{
			InputStreamReader isr2 = new InputStreamReader(System.in);
			BufferedReader bur2 = new BufferedReader(isr2);
			
			String b = bur2.readLine();
		}catch (IOException e){}
		
		
		//**************************************************
		// a und b sollen zu int[] arrays konvertiert werden
		// *************************************************

	}

}
```

Es soll dann zum Beispiel so ablaufen:


```
C:\Java\> java Addition

Vektor #1: {1 2 3}

Vektor #2: {4 5 6}

{5 7 9}
```


Wie mache ich jetzt jeweils aus dem Strings a und b verrechenbare Arrays?

Und ja: mir ist bewusst, dass das wiederholte verwenden von try-catch alles andere als elegant ist
.... mir viel auf die schnelle halt nichts besseres ein  


MfG:   Richart


----------



## Final_Striker (6. Jan 2011)

Wenn du die Vektoren ohne Klammern eingibst, dann kannst du den String einfach nach Leerzechnen splitten und bekommst ein String-Array der Größe 3.


----------



## nrg (6. Jan 2011)

danach halt noch in ein Integerarray parsen.

z.B. (keine Garantie - einfach so in Browser getippt):

```
String[] tokens = a.split(" ");
int[] array = new int[tokens.length];
for (int i = 0; i < tokens.length; i++)
       array[i] = Integer.parseInt(tokens[i]);
```

edit: zum mehrmaligen Einlesen reicht dir ein Objekt


----------



## Richart (6. Jan 2011)

vielen Dank euch beiden, mal wieder


----------

