2011-12-06 17 views
2

String(16進形式)をIntegerに変換する方法はありますか?私はInteger.parseInt(string, 16)を知っていますが、接頭辞は0xではありません。私は標準のJavaからInteger.decode(string)の効果を見ています。整数へのJ2ME 16進文字列

ありがとうございます。

+0

あなたが使用するオプション[サブ(2)](http://docs.oracle.com/javame/config/cldc/ref-impl/midp2.0/jsr118/java/lang/を検討しましたString.html#substring(int)) 'parseInt'を呼び出す前に接頭辞' 0x'を削除しますか? – gnat

+0

はい、私はif文なしでやりたいと思っています。 私はparseInt(string、16)について言及したときに接頭辞を切り捨てることについて話したと思ったが、そうは思わない。私は考えていなかった単純なことを望んでいましたが、これには単純な解決策はないと思います。とにかくありがとう。 – yihe

答えて

7
int convert(String s) { 
    int base = 10; 
    if (s.toLowerCase().startsWith("0x")) { 
     base = 16; 
     s = s.substring(2); 
    } 
    return Integer.parseInt(s, base); 
} 
+0

私はJ2MEが私のためにこれを行うことができることを望んでいました、私はちょうどこの方法を使用します。ありがとう。 – yihe