黑马程序员技术交流社区

标题: 毕向东老师--API讲解 [打印本页]

作者: hmYing    时间: 2013-8-6 21:57
标题: 毕向东老师--API讲解
今天听了毕向东老师讲的API的String类,刚听第一节,印象最深的拿来与大家分享:
int indexOf(int ch)方法:参数为ASCII码,所以为int类型参数
                                    如果字符串中找到ch字符的位置,返回它的脚标(从0开始)
                                                        没有找到,就返回 -1

内存中:方法区(方法数据:如方法代码)
            静态区
            常量池(固定不变的)如字符串:当有一个字符串变量时,它的每个字符就会保存在常量池中
String str1 = "abc";
String str2 = new String("abc");
String str3 = "abc";
其中str1 == str3为true
      str1.equals(str2)为true
      str1 == str2为false

作者: hmYing    时间: 2013-8-6 21:59
String str1 = "abc";
String str2 = new String("abc");
String str3 = "abc";
其中str1 == str3为true------------------------------------------因为"abc"保存在常量池中,并且这3个字符不重复存放在常量池,str3就也指向了与str1相同的地址
       str1.equals(str2)为true
       str1 == str2为false
作者: hmYing    时间: 2013-8-6 22:02
String str1 = "abc";
String str2 = new String("abc");
String str3 = "abc";
其中str1 == str3为true------------------------------------------因为"abc"保存在常量池中,并且这3个字符不重复存放在常量池,str3就也指向了与str1相同的地址
       str1.equals(str2)为true---------------------------------因为boolean equals(String str)方法比较两个字符串的内容
        str1 == str2为false----------------------------------------因为str2用new方法创建了字符串对象,所以"abc"与"new String("abc")"是两个不一样的字符串对象,地址也不同
作者: 神之梦    时间: 2013-8-6 22:58
不错不错      




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2