Java-Convert entier en chaîne [dupliquer]

cette question a déjà une réponse ici:

avec un numéro:

int number = 1234;

Qui serait la "meilleure" façon de convertir cette chaîne:

String stringNumber = "1234";

J'ai essayé de chercher (googler) pour une réponse, mais beaucoup ne semblaient pas "digne de confiance".

331
demandé sur Anderson Green 2011-02-21 23:43:03

7 réponses

il y a plusieurs façons:

  • String.valueOf(number) (ma préférence)
  • "" + number (Je ne sais pas comment le compilateur le gère, peut-être est-il aussi efficace que ci-dessus)
  • Integer.toString(number)
714
répondu Bozho 2011-02-21 21:12:30

la classe entière a la méthode statique toString () - vous pouvez l'utiliser:

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

renvoie un objet String représentant le nombre entier spécifié. L'argument est converti en représentation décimale signée et retourné comme une chaîne, exactement comme si l'argument et radix 10 étaient donnés comme arguments à la méthode toString(int, int).

48
répondu smas 2011-02-21 20:51:24

utilisez toujours String.valueOf(number) ou Integer.toString(number) .

utilisant "" + numéro est un overhead et fait ce qui suit:

StringBuilder sb = new StringBuilder();
sb.append("");
sb.append(number);
return sb.toString();
34
répondu AllThatICode 2015-08-21 07:17:02

ça ira. Assez digne de confiance. :)

    ""+number;

juste pour clarifier, cela fonctionne et acceptable à utiliser à moins que vous ne cherchiez une micro optimisation.

33
répondu Nishant 2018-01-24 09:07:02

la façon dont je sais convertir un entier en chaîne est en utilisant le code suivant:

Integer.toString(int);

et

String.valueOf(int);

si vous aviez un entier i, et une chaîne s, alors ce qui suit s'appliquerait:

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

si vous vouliez convertir une chaîne de caractères "s" en un entier "i", alors la suivante fonctionnerait:

i = Integer.valueOf(s).intValue();
16
répondu danjonila 2013-09-26 08:46:08

C'est la méthode que j'ai utilisée pour convertir l'entier en chaîne.Corrigez-moi si j'ai fait de mal.

/**
 * @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
répondu Jegan 2013-10-28 04:40:41

un que j'utilise souvent:

 Integer.parseInt("1234");

Point est, il ya beaucoup de façons de le faire, tous également valables. Lequel est le plus optimum/efficace, vous devriez demander à quelqu'un d'autre.

-3
répondu DYezek 2013-07-10 21:20:08