Java String类中的equals方法
2016-01-05 17:07
871 查看
Java String类的方法equals
**equal比较的是两个对象所表示的字符是否相等, 而 == 比较的是两个对象是否相等.** /* * 分析:s1.equals(s)只是比较两个对象中的字符是否相等, 与对象类型无关 * public boolean equals(Object anObject) * 将此字符串与指定的对象比较。当且仅当该参数不为 null,并且是与此对象表示相同字符序列的 String 对象时,结果才为 true。 * * * String s1 = " hello "; * 这个只是一个引用,内存中如果有"hello "的话,s1就指向它,如果没有才创建 * 如果你以后还用到 "hello "这个字符串的话并且是这样用: * String s1= " hello "; * String s3 = " hello "; * String s4 = " hello "; * 这3个变量都共享一个字符串 " hello " ,hello是限定字符串,因此是s1==s3为true * 而String s2 = new String( " hello "); * 是根据 " hello "这个String对象再次构造一个String对象,将新构造出来的String对象的引用赋给s2 */ class StringTest1 { public static void main(String[] args) { String s1="hello"; String s2=new String("hello"); String s3 = "hello"; String s4 = new String("hello"); System.out.println(s1==s2); //false 尽管s1、s2的内容相同,但是它们是不同的字符串对象 System.out.println(s1==s3); //true 因为s1、s3指向相同的限定字符"hello" System.out.println(s2==s4); //false s4是根据 " hello "这个String对象再次构造一个String对象,将新构造出来的String对象的引用赋给s4,和s2不相同 if(s1.equals(s2)){ //将此字符串与指定的对象比较。当且仅当该参数不为 null,并且是与此对象表示相同字符序列的 String 对象时,结果才为 true. System.out.println("相等"); } else{ System.out.println("不相等"); } } }
相关文章推荐
- java中控制输出小数位数的方法
- java中的类加载器(转载至其他人)
- Eclipse 插件开发 - 实现外部程序修改文件后刷新功能
- eclipse maven tools.jar找不到y也就是在这个
- Spring4.2.1框架构件
- Java 8 正式发布,新特性全搜罗
- Java 技术文章摘录
- MyEclipse Eclipse 关联源码
- Picked up JAVA_TOOL_OPTIONS (Ubuntu 15.04)
- Spring @Transactional
- Java——Java异常(不完整)
- 【java】:java里面super变量的使用
- JAVA8 十大新特性详解
- Spring 3整合Quartz 2实现定时任务
- 解决NDK开发中Eclipse报错“Unresolved inclusion jni.h”的最终方法
- Java_DES 加密和解密源码
- 在JAVA中如何连接SQL Server数据库
- MyEclipse8.5安装JsEclipse,测试成功
- Java金额每隔三位加上一个逗号
- Java 异常处理