为什么String
类没有实现Cloneable
接口?
例如:(我们有时会写这种类型的代码。)
String s1 = new String("Hello");
String s2 = new String("Hello");
这里s1!= s2;
所以不要这样做,如果我们可以做到:
String s1 = new String("Hello");
String s2 = s1.clone();
这很容易。
答案 0 :(得分:3)
String
类表示不可变的字符串。克隆String
没有任何意义。如果您认为需要克隆它,那么您可以重复使用相同的引用并实现相同的效果。
即使您clone
s1
可以s2
,s1 != s2
仍然是true
。它们仍然是对不同对象的引用。
答案 1 :(得分:1)
您可以使用
克隆字符串String clonedString = new String(stringToClone);
所以
String s1 = new String("Hello");
String s2 = new String(s1);
答案 2 :(得分:0)
这是另一种方式:
String s2 = s1.concat("");