Java String convert to int Hilfe!

Mein Programm - (Computer, PC, programmieren)

3 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Naja, du kannst strings, aus denen die args eben bestehen nicht in Integer umwandeln. Zudem wird durch dein args[0]+args[1] aus z.B. 5+3 nicht 8 sondern 53, da Strings bei einer Addition einfach aneinander gehängt werden.


Die Lösung deines Problems ist eine Konvertierung des Strings zu int. Das machst du folgendermaßen:

int x = Integer.parseInt(args[0]) + Integer.parseInt(args[1]);

Viel Glück noch bei deinem Coding-Projekt!


gildenboss 
Fragesteller
 25.02.2015, 11:19

ja genau bei sind es halt die Argumente 4 und 6 und er hat dann 4 und 6 ausgespuckt was ja eigentlich logisch ist :)

Es funktioniert leider auch nicht.

Folgenede Fehlermeldung:

" no suitable method found for parseInt(String) method Integer.parseInt(String,String) is not applicable (actual and formal argument lists differ in length) method Integer.parseInt() is not applicable (actual and formal argument lists differ in length)

no suitable method found for parseInt(String) method Integer.parseInt(String,String) is not applicable (actual and formal argument lists differ in length) method Integer.parseInt() is not applicable (actual and formal argument lists differ in length) ---- (Alt-Enter shows hints)"

0
Allw1553nd3r  25.02.2015, 11:34
@gildenboss

Okay, vielleicht klappt es mit

Integer.valueOf(args[0])

Wenn das auch nicht klappt dann musst du mal deinen Compiler checken.

Lade einfach mal deinen Code hoch (wenn es dir nix ausmacht) und ich schau ob das ganze bei mir kompiliert.

0
gildenboss 
Fragesteller
 25.02.2015, 11:43

Hat funktioniert, ich habe nur unsinnige Packages gehabt

0
gildenboss 
Fragesteller
 25.02.2015, 11:44
@gildenboss

Also mit deinem ersten Vorschlag hat es funktioniert

DANKE!

0
Allw1553nd3r  25.02.2015, 11:46
@gildenboss

Okay gut! Der 2. sollte auch gehen, zwischen den beiden Befehlen gibt es kleine Detailunterschiede, die hier aber keine Rolle spielen ;)

0

Probier mal

int x = (int)args[0] + (int)args[1];

Ist aber extrem schlechter Stil den Du Dir da angewöhnst...


gildenboss 
Fragesteller
 25.02.2015, 11:12

nein funktioniert nicht.

Ich benutze NetBeans.

Ich habe an sich einen recht guten Stil, nur hier komme ich komischerweise nicht weiter.

ich habe die Argumente (4 und 6) die ich über Properties<Run eintragen kann.

Ich hatte eher an sowas ähnliches gedacht:

String stringZahl1 = args[0];
String stringZahl2 = args[1];

int x = Integer.parseInt(stringZahl1, stringZahl2);

Integer integerZahl = new Integer(stringZahl);

System.out.println(x);
0
Nimue187  25.02.2015, 11:29
@gildenboss
String stringZahl1 = args[0];
    String stringZahl2 = args[1];

    int x = Integer.parseInt(stringZahl1) + Integer.parseInt(stringZahl2);
    System.out.println(x);
    }
0

Bin jetzt kein Java-Profi, aber die Fehlermeldung ist doch recht eindeutig: Ein String kann nicht zu einem Integer-Wert konvertiert werden.


gildenboss 
Fragesteller
 25.02.2015, 11:13

Ließ bitte meine Frage da steht, wie ich diese Fehlermeldung beheben kann, bzw wie ich den String nach Integer konvertiere.

0