请问执行完下列语句后,str1和str2分别是( )。 StringBuffer str1=new StringBuffer("abc"); StringBuffer str2=str1; str2.append("123"); str1.delete(1,3); A. a和abc123 B. abc和abc123 C. a123和a123 D. 以上都不是
时间: 2024-04-02 09:31:43 浏览: 90
执行完上述代码后,str1和str2都是"a123"。
在第二行代码中,str2被赋值为str1的引用,因此str1和str2指向同一个StringBuffer对象。在第三行代码中,通过str2对这个对象进行操作,将"123"添加到了字符串的结尾,因此此时这个对象的值为"abc123"。在第四行代码中,通过str1对这个对象进行操作,删除了索引为1和2的字符,即"bc",因此最终这个对象的值变为"a123"。由于str1和str2都指向这个对象,因此它们的值都是"a123"。
阅读全文