java中从str1中删除所有str2_Java中str1.equals(str2)和str1==str2的区别
大家好,这是我的第一篇博客,作为即将入职的学生,我现在的心情是既好奇又兴奋,对未知的职场生活充满了无限的憧憬,也想赶紧对大学生活say goodbye,因为自己的能力现在还比较有限,我想通过博客这个平台来慢慢提升自己,我想发一些平常在Java或者其他领域经常使用到的知识,不仅是对你们有帮助,同时也是我自己的进步,谢谢大家了。虽然我知道可能有很多人发过类似的博客或者技术贴,但是我尽量还是用我自己的语言来描述,支持原版。好的,废话不多说,接下来就进入正题吧~
我们直接从一个实例来开始我们今天的学习吧。
我新建了一个class名为Test01
public class Test01 {
public static void main(String[] args){
String a="helloworld";
String b="helloworld";
System.out.println(a.equals(b));
}
}
大家看上述实例,答案会是什么呢,首先一点,我们要明白的问题是,不管是".equals()"还是"==",他的返回值是true或者是false,而不是0,1或者-1,所以上述实例的输出值最终为true。现在我们将输出的语句进行修改:
public class Test01 {
public static void main(String[] args){
String a="helloworld";
String b="helloworld";
System.out.println(a==b);
}
}
其输出值仍为true。
大家都明白,"=="比较的是2个对象的地址,而".equals()"比较的是2个对象的内容,那这个区别究竟体现在那个地方呢,咱们看接下来的实例。
public class Test01 {
public static void main(String[] args){
String a="helloworld";
String b="hello" +new String("world");
System.out.println(a.equals(b));
}
}
大家觉得现在的输出是什么呢,没错,依然是true,因为".equals()"比较的是2个对象的内容,很明显不管是字符串a还是字符串b,他们的值没变,都是helloworld,所以返回的值依然是true,我们再看下一个实例。
public class Test01 {
public static void main(String[] args){
String a="helloworld";
String b="hello" +new String("world");
System.out.println(a==b);
}
}
没错,这个时候这个表达式的返回值就是false了。因为b2中的world是新申请的内存块,而==判断的是对象的地址而非值,所以不一样。
想要搞懂这个其实还是不难的,大家只要注意以后在编程中是需要进行如何的比较即可~
希望我的分享对大家有帮助,以后我也会积极更新微博,不管是简单的或者是复杂的知识点,或者是我曾经做的项目之类的,我都会分享出我的经验,谢谢大家一起学习,共同进步。
原文:http://www.cnblogs.com/hikarisama/p/5967060.html
java中从str1中删除所有str2_Java中str1.equals(str2)和str1==str2的区别相关推荐
- Linux 中如何复制和删除文件夹中的所有文件?
Linux 中如何复制和删除文件夹中的所有文件? 1.复制文件 目标文件目录必须存在 (1) 直接复制 cp /hone/user/temp/test.c /home/user/ (2) 复制并重命名 ...
- 如何在Windows中的命令提示符下删除特定目录中的文件/子文件夹
本文翻译自:How to delete files/subfolders in a specific directory at the command prompt in Windows Say, t ...
- oracle删除表空间中的表,ORACLE删除表空间中的所有表
ORACLE删除表空间中的所有表,如果是非sysdbA连接用如下sql语句 declare vsql varchar2(200); cursor c1 is select 'drop table '| ...
- mysql中关于表的删除和表中数据的删除
1.删除表(drop属于DDL语句) 格式:drop table 表名 2.删除表中的数据(delete属于DML语句,truncate属于DDL语句) 第一种方式:delete from 表名 wh ...
- LeetCode算法 删除有序数组中的重复项 删除有序数组中的重复项|| C++
目录 题目 删除有序数组中的重复项 参考答案 题目 删除有序数组中的重复项|| 参考答案 题目 删除有序数组中的重复项 给你一个有序数组 nums ,请你原地删除重复出现的元素,使每个元素只出现一次 ...
- 怎么删除mysql表中数据_如何删除数据库表中的数据?
删除数据库表中数据有两种方式: 第一种:delete from tablename where 1=1; 第二种:truncate table tablename; 区别是:第二种清空表数据比较及时 ...
- 如何用cmd命令进行:①删除文件夹中指定文件;②删除文件夹中所有文件;③删除文件夹。
[cmd删除文件夹里的文件] 1.以"管理员身份"运行cmd 2.命令:del+文件夹中文件的路径 注意:强制删除命令:del /F /S /Q E:\CloudMusic\22. ...
- Java中ArrayList问题:删除一个ArrayList中的重复元素,注意留意一个问题
该问题有两种方法: 一 利用两个数组,此法简单,不讨论 二 利用一个数组,从第0个开始依次取元素,并在其后元素中查找是否有该元素,有则删掉后面的重复元素,依次遍历.---但是这种情况要特别注意,当后续 ...
- java清空文件夹_java 删除文件夹中的所有内容而不删除文件夹本身的实例
package com.xx; import java.io.File; public class Test { public static void main(String[] args) { St ...
最新文章
- 太阳系“首个星际访客”未被探测到人工信号
- 331. Verify Preorder Serialization of a Binary Tree
- 圆方圆学院零基础入门学习Python(绝对干货,值得学习)
- Android之在TextView里面部分文字变颜色并且可以点击
- 深度学习(三十三)CRF as RNN语义分割-未完待续
- Python扩展库scipy中值滤波算法的应用
- Web前端页面设计流程及注意事项,谨记!
- C++之关键字(63个)
- 荣耀30S首销全平台夺冠 赵明:满足消费者对5G的所有需求和想象
- 用opencv进行图像处理-之用matplotlib显示
- java计算机毕业设计基于安卓Android微信的团务智慧管理小程序uniAPP
- 二重积分计算曲面表面积
- 【AI创新者】图森未来CTO侯晓迪:定义问题比解决问题更重要
- 用html做一个漂亮的网站,个人网页,css
- 微型计算机原理与应用第三版王克义编著
- 裸眼3D大屏,打破人们的认知
- 高考生男生学铁路好还是计算机好,男生学铁路什么专业好?附铁路最好的5个专业...
- 大促中为什么需要可视化监控大屏?
- ppt在线模版_ppt美化大师
- Setting 模块之辅助功能
热门文章
- 关于realarm210 realarmTest.apk不能直接安装问题解决方法
- 不存在从node到node*的适当转换函数_C++构造函数和初始化表
- 基于消息队列 RocketMQ 的大型分布式应用上云最佳实践
- 云原生消息、事件、流超融合平台——RocketMQ 5.0 初探
- 让评审人爱上你的8个要点
- 如何从 0 到 1 开发 PyFlink API 作业
- 消息队列之延时消息应用解析及实践
- php mysql 字段备注_MySQL下读取 表/字段 的说明备注信息
- No-5.变量的命名
- [WPF]使用Fody提高效率