为了账号安全,请及时绑定邮箱和手机立即绑定

双等号==与equals()的区别?==是判断地址是否相同,那么这里怎么能用双等号呢?

package string_;


public class panduana {

public static void main(String[] args) {

String a=new String("LKAIHAKDJLADJAKAALA");

//计算字符串a包含字母D个数

int count=0;

for(int i=0;i<a.length();i++) {

char c=a.charAt(i);

/*==:判断两个字符串在内存中首地址是否相同,即判断是否是同一个字符串对象.


equals():比较存储在两个字符串对象中的内容是否一致.*/

if(c=='D') {

count++;

}

}

System.out.println(count);

}

}


正在回答

2 回答

对于 == (双等号)在不同情况下代表不同功能,当==前后都是引用类型,则符合

/*==:判断两个字符串在内存中首地址是否相同,即判断是否是同一个字符串对象.equals():比较存储在两个字符串对象中的内容是否一致.*/

若是基础类型,则含义变为 判断变量值与是否相同。

语言组织得不太好,希望能帮到你


7 回复 有任何疑惑可以回复我~
#1

慕后端9158070

不好意思,打错字,是“基本类型(基本数据类型)”,不是“基础类型”
2018-03-24 回复 有任何疑惑可以回复我~

这里能用equals吗


0 回复 有任何疑惑可以回复我~
#1

慕后端9158070

不可以的,char是基本类型,是没有方法的,不过你可以转换成其包装类Character,然后试试,具体我也没尝试过,应该返回结果是flase
2018-04-08 回复 有任何疑惑可以回复我~
#2

有态度的网友 回复 慕后端9158070

终于看到一个靠谱的了,赞一个。
2018-07-27 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

双等号==与equals()的区别?==是判断地址是否相同,那么这里怎么能用双等号呢?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信