对2-3的理解

对2-3的理解

String str="Hello,Imooc";

这是2-3的代码,我在错误处做出了修改:

str=str.substring(2,5);

char ch=str.charAt(str.length()-1);这段代码已修改了。

System.out.println(ch);

老师,我的问题是:

1、

String str="Hello,Imooc";这段代码的意思是str引用指向名为Hello,Imooc对象的内存空间?

str=str.substring(2,5);这段代码的意识是str丢弃了先前的对象,重新指向了一个新的对象吗?

2、char ch=str.charAt(str.length()-1);老师,charAt()方法返回的是单字符,所以用char类型变量和String类型的对象接收都可以吗?


正在回答

登陆购买课程后可参与讨论,去登陆

2回答

同学你好

1、subString方法内部创建了新的字符串对象。该方法返回一个新的字符串,它是此字符串(调用该方法的字符串)的一个子字符串。该子字符串从指定索引处的字符开始,直到此字符串末尾。

2、对象的引用可以更改指向的对象。

3、很抱歉老师这里口误了,charAt()方法的返回值类型是char类型,所以需要使用char类型的变量去接收。

如果我的回答解决了你的疑惑,请采纳。祝:学习愉快~

  • 鱼儿0001 提问者 #1
    好的,谢谢老师!
    2019-06-22 11:36:19
好帮手慕阿满 2019-06-20 16:48:56

同学你好,关于同学问题的回答如下:

1、String str="Hello,Imooc";代码中str引用指向名为Hello,Imooc对象的内存空间。str.substring(2,5)是生成了一个新的String对象,所以str=str.substring(2,5);是重新指向了一个新的对象。

2、charAt()方法的返回值类型是char类型,所以需要使用char类型的变量接收。

如果我的回答解决了你的疑惑,请采纳。祝:学习愉快~

  • 提问者 鱼儿0001 #1
    谢谢老师的耐心回复。1、str.substring()方法是一种能创建一个新的String对象的方式吗?这感觉好奇怪啊,str对象的引用调用方法还能创建新的对象,这啥呀。2、类的引用是能更改指向的对象吗?3、老师说:charAt()方法的返回值类型是char类型,所以需要使用char类型的对象接收。-----老师,你这话感觉说的怪乖的,char没有对象吧,你说char类型的对象接收。。。。。。
    2019-06-21 10:45:10
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师