java - Wie konvertiert man ein Zeichen in einen String?



5 Answers

Gute Frage. Ich habe die folgenden fünf 6 Methoden, um es zu tun.

1. String stringValueOf = String.valueOf('c'); // most efficient

2. String stringValueOfCharArray = String.valueOf(new char[]{x});

3. String characterToString = Character.toString('c');

4. String characterObjectToString = new Character('c').toString();

   // Although this method seems very simple, 
   // this is less efficient because the concatenation
   // expands to new StringBuilder().append(x).append("").toString();
5. String concatBlankString = 'c' + "";

6. String fromCharArray = new String(new char[]{x});

Hinweis: Character.toString(char) gibt String.valueOf(char) . So effektiv sind beide gleich.

String.valueOf(char[] value) ruft einen new String(char[] value) String.valueOf(char[] value) new String(char[] value) , der wiederum den value char-Array festlegt.

public String(char value[]) {
    this.value = Arrays.copyOf(value, value.length);
}

Auf der anderen Seite String.valueOf(char value) den folgenden privaten String.valueOf(char value) auf .

String(char[] value, boolean share) {
    // assert share : "unshared not supported";
    this.value = value;
}

Quelltext von String.java in Java 8 Quellcode

Daher scheint String.valueOf(char) die effizienteste Methode zu sein, um char und String Speicher und Geschwindigkeit umzuwandeln.

  1. Wie man ein primitives Zeichen in Java in String konvertiert
  2. So konvertieren Sie Char in Java mit Beispiel
java string char type-conversion

Ich habe einen char und ich brauche einen String . Wie konvertiere ich von einem zum anderen?




Verwenden Sie eine der folgenden Möglichkeiten:

String str = String.valueOf('c');
String str = Character.toString('c');
String str = 'c' + "";



Versuchen Sie Character.toString(aChar) : Character.toString(aChar) oder nur das: aChar + ""




Wir haben verschiedene Möglichkeiten, um ein char in String zu konvertieren. Eine Möglichkeit besteht darin, die statische Methode toString() in der Klasse Character :

char ch = 'I'; 
String str1 = Character.toString(ch);

Tatsächlich verwendet diese toString Methode intern die valueOf Methode aus der String Klasse, die char-Array verwendet:

public static String toString(char c) {
    return String.valueOf(c);
}

Der zweite Weg ist das direkt zu benutzen:

String str2 = String.valueOf(ch);

Diese valueOf Methode in der String Klasse verwendet char-Array:

public static String valueOf(char c) {
        char data[] = {c};
        return new String(data, true);
}

Der dritte Weg besteht also darin, ein anonymes Array zu verwenden, um ein einzelnes Zeichen zu umbrechen und es dann an den String Konstruktor zu übergeben:

String str4 = new String(new char[]{ch});

Der vierte Weg besteht darin, eine Verkettung zu verwenden:

String str3 = "" + ch;

Dies wird tatsächlich die append Methode aus der StringBuilder Klasse verwenden, die eigentlich bevorzugt wird, wenn wir eine Verkettung in einer Schleife durchführen.




Ich konvertiere Char Array in String

Char[] CharArray={ 'A', 'B', 'C'};
String text = String.copyValueOf(CharArray);



Related