2016-04-24 19 views
-3

Zum Beispiel wird "Hello" zu einer Nummer und 10 wird zu 10 gedreht. Wenn ich es erneut versuchen werde "Hello" bekomme ich die gleiche Nummer, die ich zuvor bekommen habe. Wie kann ich das tun?Java - String zu Nummer

Edit: Ich weiß nicht, an was "Hallo" gedreht werden soll, weil ich kein Programm habe, das tut was ich will. Ich möchte nicht, dass eine bestimmte Nummer angezeigt wird.

+2

Welche Nummer ist „Hallo“ soll gedreht werden? – RealSkeptic

+0

Welche Nummer? Sie könnten zum Beispiel alle Zeichenfolgen in "0" umwandeln. –

+0

http://stackoverflow.com/questions/36809015/how-to-add-two-numbers-accepted-in-string-form-in-java/36809057?noredirect=1#comment61191290_36809057 siehe diesen Beitrag – Priyamal

Antwort

0

Sie String::hashCode für Strings verwenden könnte, und versuchen Sie zuerst ein analysieren integer-Zahlen erhalten:

public static int convert(String str) { 
    try{ 
     return Integer.parseInt(str.trim()); 
    }catch(Exception e) { 
     return str.hashCode(); 
    } 
} 

Aber wenn man Dinge wie "10 10" haben, werden Sie immer noch den Hash-Code bekommen und nicht nur 1010

+0

Danke. Das "10 10" ist kein Problem, da ich nur ganze Zahlen als ganze Zahlen beibehalten möchte. – roydbt

0

Wenn ein Wort einer Nummer zugewiesen ist, verwenden Sie das Wörterbuch. Zum Beispiel könnten Sie eine Hashmap verwenden, wobei Sie für jede Zeichenfolge die entsprechende Ganzzahl speichern würden.

Wenn Sie die entsprechende ganze Zahl erhalten möchten, müssen Sie nur den Wert des String-Schlüssel suchen (in Ihrem Beispiel „Hallo“)