char 배열을 문자열로 다시 변환하는 방법
문자 배열이 있습니다.
char[] a = {'h', 'e', 'l', 'l', 'o', ' ', 'w', 'o', 'r', 'l', 'd'};
현재의 해결방법은
String b = new String(a);
하지만 분명히 이것을 하는 더 좋은 방법이 있을까요?
아니요, 그 해결책은 완전히 정확하고 아주 미미합니다.
단, 이는 매우 이례적인 상황임을 유의하십시오.왜냐면String
Java에서 특별히 처리됩니다."foo"
실제로는String
따라서 스트링을 개별적으로 분할할 필요가 있습니다.char
s 및 join back은 일반 코드에서는 필요하지 않습니다.
이것을 C/C++ 와 비교합니다."foo"
다발을 가지고 있다char
한쪽이 0바이트로 종단되어 있습니다.string
다른 쪽에는 레거시 메서드를 사용해야 하는 변환이 많이 있습니다.
String text = String.copyValueOf(data);
또는
String text = String.valueOf(data);
거의 틀림없이 더 낫다(의미적 표현).new String
콜)을 클릭합니다.
char 배열이 문자열로 다시 변환됩니다.
char[] charArray = {'a', 'b', 'c'};
String str = String.valueOf(charArray);
String str = "wwwwww3333dfevvv";
char[] c = str.toCharArray();
문자 배열을 String으로 변환하려면 두 가지 방법이 있습니다.
Arrays.toString(c);
문자열을 반환합니다.[w, w, w, w, w, w, 3, 3, 3, 3, d, f, e, v, v, v]
.
그리고:
String.valueOf(c)
문자열을 반환합니다.wwwwww3333dfevvv
.
개요: 주의:Arrays.toString(c)
왜냐하면 당신은"[w, w, w, w, w, w, 3, 3, 3, 3, d, f, e, v, v, v]"
대신"wwwwww3333dfevvv"
.
Java의 문자열은 문자 배열 주위의 개체일 뿐입니다.그 때문에,
char[]
는 같은 문자를 가진 언박스의 String과 동일합니다.문자 배열에서 새 문자열을 생성함으로써
new String(char[])
당신은 기본적으로 컴파일러에 String 객체를 문자 배열 주위에 자동 상자화하도록 지시합니다.
사용할 수 있습니다.String.valueOf
방법.
예를들면,
char[] a = {'h', 'e', 'l', 'l', 'o', ' ', 'w', 'o', 'r', 'l', 'd'};
String b = String.valueOf(a);
System.out.println("Char Array back to String is: " + b);
문자열에 대한 문자 배열에 대한 자세한 내용은 아래 링크를 참조하십시오.
https://docs.oracle.com/javase/7/docs/api/java/lang/String.html
https://www.flowerbrackets.com/convert-char-array-to-string-java/
다음과 같은 String.value를 사용합니다.
private static void h() {
String helloWorld = "helloWorld";
System.out.println(helloWorld);
char [] charArr = helloWorld.toCharArray();
System.out.println(String.valueOf(charArr));
}
package naresh.java;
public class TestDoubleString {
public static void main(String args[]){
String str="abbcccddef";
char charArray[]=str.toCharArray();
int len=charArray.length;
for(int i=0;i<len;i++){
//if i th one and i+1 th character are same then update the charArray
try{
if(charArray[i]==charArray[i+1]){
charArray[i]='0';
}}
catch(Exception e){
System.out.println("Exception");
}
}//finally printing final character string
for(int k=0;k<charArray.length;k++){
if(charArray[k]!='0'){
System.out.println(charArray[k]);
} }
}
}
//Given Character Array
char[] a = {'h', 'e', 'l', 'l', 'o', ' ', 'w', 'o', 'r', 'l', 'd'};
//Converting Character Array to String using String funtion
System.out.println(String.valueOf(a));
//OUTPUT : hello world
Java 8 Stream 함수를 사용하여 임의의 어레이 유형을 String으로 변환
String stringValue =
Arrays.stream(new char[][]{a}).map(String::valueOf).collect(Collectors.joining());
사용해보십시오.java.util.Arrays
이 모듈에는 어레이와 관련하여 사용할 수 있는 다양한 유용한 방법이 있습니다.
Arrays.toString(your_array_here[]);
이거 드셔보세요
Arrays.toString(array)
String output = new String(charArray);
여기서 charArray는 문자 배열이고 출력은 문자열로 변환된 문자 배열입니다.
이것을 시험해 보세요.
CharSequence[] charArray = {"a","b","c"};
for (int i = 0; i < charArray.length; i++){
String str = charArray.toString().join("", charArray[i]);
System.out.print(str);
}
String Builder 클래스를 사용할 수도 있습니다.
String b = new StringBuilder(a).toString();
String 또는 String Builder의 사용은 메서드 요건에 따라 달라집니다.
한 가지 다른 방법은 다음과 같습니다.
String b = a + "";
언급URL : https://stackoverflow.com/questions/7655127/how-to-convert-a-char-array-back-to-a-string
'source' 카테고리의 다른 글
Axios를 통해 Laravel로 파일을 보내는 방법 (0) | 2022.07.23 |
---|---|
랜덤 "Element are not attached to the DOM" StaleElementReferenceException (0) | 2022.07.23 |
C의 값 주소 또는 포인터를 인쇄합니다. (0) | 2022.07.23 |
GCC에서 x86 어셈블리의 Intel 구문을 사용할 수 있습니까? (0) | 2022.07.23 |
Java에서 메모리 누수를 작성하려면 어떻게 해야 하나요? (0) | 2022.07.23 |