前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >关于Java判断字符串相等的常见问题

关于Java判断字符串相等的常见问题

作者头像
算法与编程之美
发布2023-01-03 19:14:04
7340
发布2023-01-03 19:14:04
举报

1 问题

在判断两个字符串是否相等的时候很自然地使用了“==”但是为什么程序却不能正确运行,或者说得到的结果不是期望的结果?

2 方法

在java中String属于对象类型, 如果使用“==” 两个字符串是不是相等比较的不是String的内容, 而是根据内存图两个String对象的内存地址进行比较。所以在java中要比较两个String是不是相等的要使用String.equals()。

public class Add {

public static void main(String[] args){

String str1 = new String("sjjg");

String str2 = new String("gcsj");

String str3 = new String("gcsj");

System.out.println(str1 == str2);

System.out.println(str2 == str3);

}

}

public class Add {

   public static void main(String[] args){

       String str1 = new String("sjjg");

       String str2 = new String("gcsj");

       String str3 = new String("gcsj");

       System.out.println(str1.equals(str2));

System.out.println(str2.equals(str3));

   }

}

3 结语

Java中,“==”相等判断符用于判断基本数据类型和引用数据类型。当判断基本数据类型时,判断的是数值,当判断引用数据类型时,判断变量是否指向同一引用对象,即内存图中两个变量的内存地址是不是同一个。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-11-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 算法与编程之美 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档