web-dev-qa-db-ja.com

Java - 整数を文字列に変換する

数が与えられると:

int number = 1234;

これを文字列に変換する "最善の"方法です。

String stringNumber = "1234";

私は答えを探し(グーグル)しようとしましたが、「信頼できる」とは思われませんでした。

368
Trufa

複数の方法があります。

  • String.valueOf(number)(私の好み)
  • "" + number(コンパイラーがそれをどのように処理するのかわかりません。おそらくそれは上記と同じくらい効率的です)
  • Integer.toString(number)
767
Bozho

整数クラスは静的メソッドtoString()を持っています - あなたはそれを使うことができます:

int i = 1234;
String str = Integer.toString(i);

指定された整数を表すStringオブジェクトを返します。引数と符号付き10進数がtoString(int、int)メソッドの引数として指定された場合とまったく同じように、引数は符号付き10進表現に変換され、ストリングとして返されます。

50
smas

これはします。かなり信頼できる。 :)

    ""+number;

明確にするために、これはうまく機能し、ミクロの最適化を探しているのでなければ使用するのに受け入れられます。

36
Nishant

常にString.valueOf(number)またはInteger.toString(number)を使用してください。

+数字を使用するとオーバーヘッドになり、次のことが行われます。

StringBuilder sb = new StringBuilder();
sb.append("");
sb.append(number);
return sb.toString();
36
AllThatICode

整数を文字列に変換する方法を知る方法は、次のコードを使うことです。

Integer.toString(int);

そして

String.valueOf(int);

整数のiと文字列sがある場合は、次のようになります。

int i;
String s = Integer.toString(i); or
String s = String.valueOf(i);

文字列 "s"を整数 "i"に変換したい場合は、次のようになります。

i = Integer.valueOf(s).intValue();
16
danjonila

これは、整数を文字列に変換するために使用した方法です。間違った場合は訂正してください。

/**
 * @param a
 * @return
 */
private String convertToString(int a) {

    int c;
    char m;
    StringBuilder ans = new StringBuilder();
    // convert the String to int
    while (a > 0) {
        c = a % 10;
        a = a / 10;
        m = (char) ('0' + c);
        ans.append(m);
    }
    return ans.reverse().toString();
}
2
Jegan