我今年夏天在美国学习Java。我是Stringmethod的新手。
我尝试了解如何使用Stringbuffer()
方法。
我尝试在其他部分制作ssl=statusBuffe
r,但这会导致错误;我应该如何修复适当的方式?
非常感谢你。
public class test {
public static void main(String[] args){
String s= "123-45-6789";
String ssl;
int slength = (s.length());
if(slength ==11)
{
ssl = s;
}
else if(slength =9){
StringBuffer statusBuffer = new StringBuffer(s);
statusBuffer.insert(3,"-");
statusBuffer.insert(6,"-");
ssl=statusBuffer; //------ This part is causing error**
}
System.out.println(ssl);
}
}
答案 0 :(得分:1)
ssl
是一个字符串。 statusBuffer
是一个StringBuffer。
你需要 ssl = statusBuffer.toString();
答案 1 :(得分:1)
StringBuffer不是字符串。你必须调用statusBuffer.toString()
来实际从StringBuffer中获取String。
在Java中,无法修改字符串。如果您创建一个String,它始终是String。如果修改String,则会创建一个新字符串。 StringBuffer基本上是一个可修改的String,在组装大文本时可以用于性能原因。它们也是线程安全的。有关详细信息,请参阅javadocs