java错题集之String(2)
来源:互联网 发布:bootstrap.js下载 编辑:程序博客网 时间:2024/05/20 08:22
以下输出结果为:
public
class
Test {
public
static
void
main(String[] args) {
StringBuffer a =
new
StringBuffer(
"A"
);
StringBuffer b =
new
StringBuffer(
"B"
);
operator(a, b);
System.out.println(a +
","
+ b);
}
public
static
void
operator(StringBuffer x, StringBuffer y) {
x.append(y); y = x;
}
}
答案:
AB,B
解析:
StringBuffer a = newStringBuffer("A");StringBuffer b = newStringBuffer("B");此时内存中的状态如下图所示:publicstaticvoidoperator(StringBuffer x, StringBuffer y) {x.append(y); y = x;}进入如下方法后,内存中的状态为:x.append(y);这句话比较关键,即,append为追加一个字符串在原字符串,并不是创建一个新的字符串对象保存下来。这条语句执行后,内存的状态为:y = x;这条语句执行后,内存的状态为:当operator方法执行完毕后内存中的状态为:因为方法执行完毕,局部变量消除。有内存中的状态,可以知道最后的结果。
0 0
- java错题集之String(2)
- java错题集之String(1)
- Java 面试之2 String 参数传递
- Java源码阅读之String(2)
- 浅谈Java之String
- java String之我见
- JAVA基础之String
- Java 面试 之String
- java之String
- Java 之 String 类型
- Java 之 String 类型
- Java 之 String 类型
- Java之不变String
- Java 之 String 类型
- Java 之 String 类型
- java之string学习
- Java之------------------- String
- [Java]String之寻根问底
- 洛谷 P1965 转圈游戏
- ADC_ScanConvMode_ADC_ContinuousConvMode_EOC
- WPF教程(二十一)工具提示
- python代码生成验证码
- 隐藏状态栏
- java错题集之String(2)
- sam格式详解
- riot写一个timeline标签
- 《gradle教程系列》一.gradle简介
- C++中的static关键字的总结
- NYOJ-456-邮票分你一半(01背包)
- iOS开发自定义UIPickView
- taiga安装手册
- C#日期时间格式化