0
在String构造的代码 -在这种情况下'大小> originalValue.length'在字符串构造函数 - 字符串(原始字符串)?
public String(String original) {
int size = original.count;
char[] originalValue = original.value;
char[] v;
if (originalValue.length > size) {
int off = original.offset;
v = Arrays.copyOfRange(originalValue, off, off+size);
}
.
.
.
}
我感到困惑的这一行:
if (originalValue.length > size) {
在情况下,我们有一些像
String s1 = "Abcd";
String s3 = new String(s1.substring(3));
然后根据代码
original = "d";
size = 1;
originalValue.length = 1;
所以size
和originalValue.length
在这里是一样的。
我错了吗?我寻找答案,但找不到任何满意的答案,所以我为此发布了一个新问题。当size> originalValue.length时,请帮助我理解确切的情况。谢谢
这是旧代码。你在看什么版本的Java? –
@SotiriosDelimanolis - 我猜他正在使用Jdk 1.6。 – TheLostMind
是JDK 1.6。被这个部分弄糊涂了,s0问道。 –