`
张洪财
  • 浏览: 275958 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

String 等号比较 和 equals

    博客分类:
  • java
 
阅读更多

1、"aa".equals("aa") 返回 true 。因为 String类重写了Object对象的equals

2、

String a1=new String("aa"); String a2=new String("aa");

System.out.println(a1==a2)  返回false

 

String a1="aa"; String a2="aa";

System.out.println(a1==a2) 返回true

 

"==" 都是地址比较,为什么 第二个a1==a2 就返回true。

 

 

原因是:"aa" 这样赋的值存在stack栈中,stack会先搜索栈区如果没有一样的值再新生产一个值。

 

而new String 出来的对象存在heap堆中,没new一次就是一个新对象。

 

 

分享到:
评论

相关推荐

    C#中的 == 和equals()区别浅析

    在C#编程语言中,`==`运算符和`Equals()`方法是两种常见的用于比较对象是否相等的方式,但它们之间存在重要的区别。本文将详细解释这两种比较方式的不同点。 首先,`==`运算符主要用于比较基本数据类型的值是否相等...

    java中equals和的比较.doc

    String 类型中的equals和== - **例子一**: ```java String s1 = "Monday"; String s2 = "Monday"; ``` 在这个例子中,`s1`和`s2`都指向字符串常量池中相同的"Monday"对象。因此,无论是使用`==`还是`equals`...

    关于等号的问题

    equals 方法的重要性毋须多言,只要你想比较两个对象是不是同一对象,你就应该实现 equals 方法,让对象用你认为相等的条件来进行比较。 equals 方法的规范: 1.对于任何引用类型,o.equals(o) == true 成立。 2....

    浅析C#中的等号“==”和Equals

    1.“==”和Equals两个真的有关联吗?  对于“==”和Equals大多数网友都是这样总结的:  “==” 是比较两个变量的值相等。  Equals是比较两个变量是否指向同一个对象。  public class Person  {  public ...

    java中equals和等号(==)的区别浅谈

    在Java编程语言中,`equals()`方法和等号`==`是用于比较对象的两种不同方式,它们在处理不同类型的数据时有不同的行为。了解这两者的区别对于编写正确的代码至关重要。 首先,我们来看Java中的数据类型。Java的数据...

    2023最新Android 面试篇(2303版).pdf

    本资源摘要信息涵盖Java基础知识点,主要涉及Java中的数据类型、equals和hashCode方法、基本数据类型和引用类型的区别、多态的理解、String、StringBuffer和StringBuilder的区别等。 1. Java中==和equals和hashCode...

    2021金三银四最新出炉《Java中高级面试题合集》V1.0

    在Java中,`==`和`equals()`都是用来比较对象的,但它们的比较方式不同。 - **基本数据类型:** 当使用`==`比较两个基本数据类型(如int、double、char等)的值时,比较的是它们的值是否相等。例如: ```java ...

    java课程设计报告说明书

    号按钮=new Button("="); 退格按钮=new Button("C");... if(s.equals(".")||s.equals("+/-")||s.equals("C")||s.equals("AC")||s.equals("1/x")||s.equals("=")) { //处理特殊键操作 } else { //处理数字键操作 } }}

    读取ENVI图像头文件.rar

    它由一系列键值对组成,每行一个键值对,键和值之间用等号(=)分隔。例如,"byte_order = L"表示数据的字节顺序是小端模式(Little Endian)。 为了在C++中读取ENVI头文件,你需要编写代码来解析这些文本信息。...

    java简单计算器源代码.pdf

    }else if(ss.equals("=")){//按下等号,计算结果 try{ a=calculate(str); txt.setText(String.valueOf(a)); str=""; }catch(Exception ex){ txt.setText("错误"); } }else if(ss.equals("清空")){//按下清空,清空...

    C#物流代码

    INI文件由一系列的节(section)组成,每个节内包含键值对(key-value pair),其中键名(key)和值(value)之间用等号(=)分隔。例如: ```ini [DefaultSettings] Username = JohnDoe Password = Secret123 ``` #### 三、...

    Java试题 (3).docx

    D."john".equals(new String("john"))(虽然内容相同,但对象不同,equals比较内容不比较对象引用)。 13. 代码中的while循环在执行时,i一开始为10,然后i自增变为11,此时i等于10的判断失败,循环结束。因此,...

    更改ini配置文件.rar

    例如,`[Section]`表示一个节(section),键(key)和值(value)之间用等号分隔,如`Key=Value`。C#提供了一些库和方法来处理ini文件,但不是内置支持的,因此我们需要借助第三方库或者自定义代码来实现。 在C#中...

    如何在.Net的C#中制作DLL文件,读取ini文件

    注意,这个方法假设INI文件的格式是标准的,每个键值对在同一行,且键与值之间用等号分隔。 以上就是使用C#在.NET环境中创建DLL文件和读取INI文件的基本操作。在实际开发中,你可能需要根据具体需求对代码进行扩展...

    JSP代码写的运算器

    该运算器具备基本的数学运算功能,包括加法、减法、乘法和除法。通过前端表单输入数字及选择运算符后,服务器端使用JSP脚本进行计算并返回结果。 #### 二、技术栈与环境配置 ##### 技术栈 - **JSP (JavaServer ...

    神洲数码招程序员面试题

    - A选项使用双等号`==`比较两个对象的引用,只有当它们指向同一个对象时才返回true。所以,`a==b`可能为false。 - B选项同样使用`==`,`b==c`也是比较引用,因此也可能为false。 - C选项使用`.equals()`方法比较...

    2021-2022计算机二级等级考试试题及答案No.12871.docx

    9. Java 中,两个 String 对象的比较应该使用 equals 方法,因此 str1.equals(str2) 的值为 true。 10. ASP.NET 应用程序中,访问 SqlServer 数据库时,需要导入 System.Data.SqlClient 命名空间。 11. 日期型常量...

    Java与JavaScript中判断两字符串是否相等的区别

    而Java里的等号则是判断两字符串的引用是否一样,判断实体需要用equals()方法,或 者compareTo()方法,这里需要强调的是equals()方法的参数类型,其参数类型绝对不是String类,而是Object类,咱不止一次看 到国内一些...

    java试题及答案精致).pdf

    8. 循环条件:表达式`i++`、`i>5`和`bEqual = str.equals("q")`都可以作为循环条件,但`count = = i`不是一个有效的表达式,因为`= =`是两个等于符号,应该是单个等号`=`。 9. 运算符优先级:最高优先级是括号`()`...

Global site tag (gtag.js) - Google Analytics