首页 > 其他分享 >String中“==”经典试题

String中“==”经典试题

时间:2023-02-08 15:33:46浏览次数:34  
标签:试题 String System 字符串 intern 经典 println out

以下代码,控制台打印的结果是什么?

String s1 = "ab";
String s2 = "a" + "b";
String s3 = s1 + "b";
String s4 = new String("ab");
String s5 = new String("ab");
System.out.println(s1 == s2);
System.out.println(s1 == s3);
System.out.println(s1 == s4);
System.out.println(s3 == s4);
System.out.println(s1 == s4.intern());
System.out.println(s4 == s5.intern());
System.out.println(s4.intern() == s5.intern());
		
String s6 = new StringBuilder("for").append("lan").toString();
System.out.println(s6 == s6.intern());
String s7 = new StringBuilder("forlan").toString();
System.out.println(s7 == s7.intern());

打印结果

true
false
false
false
true
false
true
true
false

总结

  • 采用new创建的字符串对象不进入字符串池
  • 字符串相加时,都是静态字符串,会加到字符串池,
  • 字符串相加时,其中含有变量,不会加到字符串池中
  • String.intern()的作用:字符串在常量池存在,返回常量引用;不存在,放入该字符串,返回该字符串引用

标签:试题,String,System,字符串,intern,经典,println,out
From: https://www.cnblogs.com/huozhonghun/p/17101951.html

相关文章

  • 泛型stringToNumber
    C++中将string类型转换为double的方法:#include<iostream>#include<sstream>//使用stringstream需要引入这个头文件usingnamespacestd;//模板函数:将string类型变量转......
  • C#: "$"和"string.format()"区别和用法
    (1)string.format()需要自己在字符串中写占位符,在后面跟上参数。(2)$符号,比较简洁,直接在字符串的相应位置替换为参数即可。staticvoidMain(string[]args){......
  • tcp三次握手,四次挥手(面试题)
    tcp三次握手1.第一次握手:客户端给服务器发送一个syn报文;2.第二次握手:服务器收到SYN报文之后,会应答一个SYN+ACK报文;3.第三次握手:客户端收到SYN+ACK报文之后,会回应......
  • String和Integer的相互转换
        一、int类型转换成String类型定义一个int类型inti=100;//方法一:使用i+"";Strings1=i+"";//方法二:String.valueOF(i);Strings2=String.value......
  • java面试题(四)
    1.java面试题(四)1.1cap理论,base理论1.Consistency(一致性):即更新操作成功并返回客户端后,所有节点在同一时间的数据完全一致。对于客户端来说,一致性指的是并发访问......
  • (笔试题)下列代码结果
    #include<stdio.h>intmain(){chara=-128;charb=128;printf("%u\n",a);printf("%u\n",b);return0;}如果是有符号数最高表示正负,如果是无符号数最高位表示大小......
  • 参加的面试题
    一、mysql优化的方法1、选择最合适的字段类型   Mysql是一种关系型数据库,表越小询也就越快。因此,在创建表将表中字段的宽度舍得尽可能小。2、尽量把字段设置为NOTNU......
  • 软件测试|f-string格式化输出的这些用法,90%的Pythoner不知道
    f-srtingf-string是Python3.6版本开始引入的特性,想必很多Python用户都基础性的使用过,通过它我们可以更加方便地向字符串中嵌入自定义内容,但f-string真正蕴含的功能远......
  • #yyds干货盘点# LeetCode面试题:整数反转
    1.简述:给你一个32位的有符号整数x,返回将x中的数字部分反转后的结果。如果反转后整数超过32位的有符号整数的范围 [−231, 231 −1],就返回0。假设环境不允许......
  • ESD二极管选型选用、封装和经典应用详解
    都知道,静电放电在我们日常生活中是一种很常见的现象。但是,对于电子产品而言,静电放电可能会导致电路中的元器件内部受损,影响产品的正常使用寿命,甚至损坏。为此,做好ESD防护是......