Wie konvertiert man einen String "(123,456)" in -123456 (negative Zahl) in Java?
Beispiel:
(123,456) = -123456
123,456 = 123456
Ich habe die NumberFormat-Klasse verwendet, aber es werden nur positive Zahlen umgewandelt, die nicht mit negativen Zahlen arbeiten.
%Vor%Ausgabe:
Nummer ist auf 123456 formatiert
Ich konnte deine Zeichenfolge nicht analysieren!
Sie könnten versuchen:
%Vor%Es könnte jedoch eine bessere Lösung geben
Einfacher Trick ohne benutzerdefinierte Analyselogik:
%Vor% Der ParameterDecimalFormatSymbols kann weggelassen werden, wenn das aktuelle Gebietsschema zum Analysieren
verwendet werden sollHier versuche ich, die Zeichenfolge in Ganzzahl und dann zurück in Ganzzahl in Zeichenfolge zu ändern.
Doppelte Schrägstriche ('\\') werden verwendet, um das Sonderzeichen zu umgehen, wenn mehrere Vorkommen nützlich sind.
Hier ist der vollständige Code: Getestet und ausgeführt.
%Vor%Jetzt sehen Sie die erwarteten Ergebnisse wie angegeben.
Versuchen Sie Folgendes:
%Vor%Dies überprüft, ob die Zeichenkette ein "(" enthält.) Wenn dies der Fall ist, werden alle '(' und ')' Zeichen entfernt, die Zeichenkette in eine Ganzzahl umgewandelt und der Wert negativ gemacht. 'Zeichen und analysiert die ganze Zahl, also positiv.