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]);
} }
}
}
-2
您可以使用 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);
11 回答
java中的String只是一个字符数组周围的对象 . 因此a
与具有相同字符的未装箱字符串相同 . 通过从您的字符数组创建一个新的String
你基本上是在告诉编译器在你的字符数组周围自动放置一个String对象 .
不,这个解决方案是绝对正确的,非常简单 .
但请注意,这是一种非常不寻常的情况:因为
String
是专门用Java处理的,所以即使"foo"
实际上是String
. 因此,在普通代码中不需要将字符串拆分为单独的char
并将它们连接回来 .将此与C / C进行比较,其中
"foo"
有一组char
,一端是零字节,另一端是string
,由于传统方法,它们之间有很多转换 .String text = String.copyValueOf(data);
要么
String text = String.valueOf(data);
可以说是更好(封装
new String
调用) .这会将char数组转换回字符串:
现在将字符数组转换为String,有两种方法 .
返回字符串
[w, w, w, w, w, w, 3, 3, 3, 3, d, f, e, v, v, v]
.和:
返回字符串
wwwwww3333dfevvv
.您可以使用
String.valueOf
方法 .例如,
有关char数组到字符串的更多信息,请参阅下面的链接
https://docs.oracle.com/javase/7/docs/api/java/lang/String.html
https://www.flowerbrackets.com/char-array-to-string-java/
试试这个
试试这个:
您还可以使用StringBuilder类
String或StringBuilder的使用因方法要求而异 .
另一种方法是: