str1==str2和str1.equals(str2)的问题
来源:互联网 发布:ug高级仿真数控编程 编辑:程序博客网 时间:2024/05/17 03:31
问题:
@Testpublic void stringTest(){ String str1 = "hello"; String str2 = "hello"; System.out.println("str1.equals(str2) : "+ str1.equals(str2)); System.out.println("str1 == str2 : "+ (str1== str2));}//consolestr1.equals(str2) : truestr1 == str2 : true
equals
比较的是两个数的数值,而==
比较的是地址的引用,但这里为什么str1==str2
返回是true
,主要是由于和java中的常量池有关;在给str1
赋值的时候,将hello
的一起放入了常量池中,当再次将hello
赋值str2
的时候,先从常量池中查看是否存在hello
的值,如果有,则直接取出,所以str1
和str2
指的是同一个引用,因此返回的结果自然是true
阅读全文
0 0
- str1==str2和str1.equals(str2)的问题
- 7.1.7 char str1[]="abc"和char str2[]="abc";str1和str2不相等
- function return_value=EndWith(str1,str2)
- String str1;和String str2=new String();
- 给定两个字符串str1和str2,查找str2在str1中出现的位置
- $str1 = null; $str2 = false; echo $str1==$str2 ? ‘相等’ : ‘不相等’;
- char str1[]="abc";char str2[]="abc";str1与str2不相等,为什么
- char str1[]="abc"; char str2[]="abc";str1与str2不相等,为什么
- char str1[]="abc"; char str2[]="abc";str1与str2不相等,为什么
- String str1="abc";和String str2=new String("abc");的区别
- String str1="abc";和String str2=new String("abc");的区别
- String str1="abc";和String str2=new String("abc");的区别
- String str1="abc";和String str2=new String("abc");的区别
- memcpy(str2,str1,i);
- 复制str1到str2
- strcpy(str1,str2);
- locate(str1,str2)函数
- 字符串str1、str2,测试str2中字符是否都包含在str1中。例如:str1="abcdef",str2="aaaaccc",则返回true
- 递归及递归的简单运用之4种方法解斐波那契数列
- React map items
- android 架构师知识图谱
- 用c语言输出九九乘法口诀表
- 对整型数字的处理(求位数,顺序打印,逆序打印)
- str1==str2和str1.equals(str2)的问题
- session与cookie的区别
- linux x86(64位/32位)系统 libevent 编译安装说明
- 《机器学习》第四章朴素贝叶斯分类器问题总结(python2.7->3.5)
- Linux命令全称
- YTU OJ 3137: 动态规划基础题目之拦截导弹(Java解题)
- java基础
- PHP多进程爬虫-Curl中的 SSL 和 pcntl_fork
- python 学习 第一天