我在这里有一个问题:
String s1="9578";
String s2="434";
int len1=s1.length();
int len2=s2.length();
System.out.println(len1);
System.out.println(len2);
String temp;
temp=s1;
s1=s2;
s2=temp;
System.out.println("after swaping: ");
System.out.println(len1);
System.out.println(len2);
Run Code Online (Sandbox Code Playgroud)
打印出来的将是:
4
3
after swaping:
4
3
Run Code Online (Sandbox Code Playgroud)
值的变化len1和len2不变.len1应该指向s1并且len2应该指向s2.他们为什么不改变?
一旦为某个int(或任何其他原始数据类型)分配了一个值,就会"忘记"它来自哪里.一旦分配了值,它将退出"s1的长度",并且仅为4.不多也不少.
如果你想连续引用它的长度s1,只需s1.length()在需要时随时调用,而不是将其存储在另一个变量中.
| 归档时间: |
|
| 查看次数: |
102 次 |
| 最近记录: |