equals是比较值/对象是否相同,==则比较的是引用地址是否相同。

==  如果是基本类型则表示值相等,如果是引用类型则表示地址相等即是同一个对象

  1. package com.char3;
  2. public class StringTest {
  3.  
  4. /**
  5. * StringBuffer 是可变的字符序列的类似字符串的对象,对其进行改变时返回对同一实例的引用
  6. * 代码运行结果:
  7. * is equal true
  8. * is == true
  9. * 说明:sb和sb1是同一个引用地址
  10. */
  11. public static void useStringBuffer(){
  12. StringBuffer sb = new StringBuffer("sb你好");
  13. StringBuffer sb1= sb.append(",陈瑞");
  14. System.out.println("is equal "+sb.equals(sb1));
  15. System.out.println("is == " + (sb==sb1));
  16. }
  17. /**
  18. * String 创建对象s,吧s的引用传给str
  19. * 代码运行结果:
  20. * is equal true
  21. * is == true
  22. * 说明:s 和str 的值相同,引用地址也相同
  23. */
  24. public static void useString(){
  25. String s = "你好";
  26. String str = s ;
  27. System.out.println("is equal "+s.equals(str));
  28. System.out.println("is == "+(s == str));
  29. }
  30. /**
  31. * String 创建str1的时候把“nihao”放在常量池中,当创建str2的时候先去常量池中查看是否有相同的常量值,如果存在则吧常量的引用给str2
  32. * 代码运行结果:
  33. * is equal true
  34. * is == true
  35. * 说明:str1和str2的值相同,引用地址也相同
  36. */
  37. public static void useString1(){
  38. String str1="nihao";
  39. String str2 = "nihao";
  40. System.out.println("is equal "+str1.equals(str2));
  41. System.out.println("is == "+(str1==str2));
  42. }
  43. /**
  44. * String创建的字符串 是不可变的,str表面看是对s的修改,其实质没修改原字符串,而是新建了字符串对象str
  45. * 一下的代码运行结果:
  46. * is equal false
  47. * is == false
  48. * 说明:s 和 str 值不等,引用地址也不用
  49. */
  50. public static void useString2(){
  51. String s = "你好";
  52. String str = s+"chenrui" ;
  53. System.out.println("is equal "+s.equals(str));
  54. System.out.println("is == "+(s == str));
  55. }
  56. public static void main(String[] args) {
  57. useStringBuffer();
  58. useString();
  59. useString1();
  60. useString2();
  61. }
    }
  62.  
  63. ---------------------
  64. 作者:chenrui_
  65. 来源:CSDN
  66. 原文:https://blog.csdn.net/jijijiujiu123/article/details/18631647

Java - String中的==、equals及StringBuffer(转自CSDN 作者:chenrui_)的更多相关文章

  1. Java String字符串/==和equals区别,str。toCharAt(),getBytes,indexOf过滤存在字符,trim()/String与StringBuffer多线程安全/StringBuilder单线程—— 14.0

    课程概要 String 字符串 String字符串常用方法 StringBuffer StringBuilder String字符串: 1.实例化String对象 直接赋值  String str=& ...

  2. JAVA String、StringBuilder、和StringBuffer的区别,及如何使用

    目录 String类 一.String类的理解和创建对象 二.String类创建的方式 两种创建String对象的区别 测试题 三.String常用方法 四.StringBuffer类 1.Strin ...

  3. Java String的== 与 equals小结

    package hashcode; public class LearnString { public static void main(String[] args) { //1.先在栈中创建一个对S ...

  4. 【java基础 15】java代码中“==”和equals的区别

    导读:昨夜闲来无事,和贾姑娘聊了聊java基础,然后就说到了这个"=="和equals的问题,我俩都是以前了解过,也常用这个,但是,昨天说到的时候,又乱了,什么比较地址值,什么判断 ...

  5. java——包装类中的equals方法

    基本数据类型包装类中的equals方法用于比对相同包装类中的值是否相等,如果两者比较的包装类类型不同则返回false: Byte public boolean equals(Object obj) { ...

  6. java String 中 intern方法的概念

    1. 首先String不属于8种基本数据类型,String是一个对象. 因为对象的默认值是null,所以String的默认值也是null:但它又是一种特殊的对象,有其它对象没有的一些特性. 2. ne ...

  7. 深入解析java String中getBytes()的编码问题

    转载请注明出处:http://www.cnblogs.com/Joanna-Yan/p/6900536.html Java服务器后台在和Android端App通信时,遇到了两端关于用MD5加密同一包含 ...

  8. Java Object中的equals和hashCode

    Java的Object对象中有两个方法比较有意思,一个是equals(),一个是hashCode(),那么这两个的作用有些同学可能还不是很清楚,那么同学们现在就进一步了解一下吧. 下面咱们写一个简单的 ...

  9. Java String 中的一些函数与正则的结合使用

    首先正则表达式在处理字符串问题时,真的非常强大. 正则可以帮助我们处理字符串的: 匹配, 选择, 编辑, 验证等问题. 正则中"\\"表示插入一个"\" 这里仅 ...

随机推荐

  1. 执行“hdfs dfs -ls”时报ConnectException

    原因可能是指定的端口号不对,该端口号由hdfs-site.xml中的属性"dfs.namenode.rpc-address"指定,即为NameNode的RPC服务端口号. 文件上传 ...

  2. Hortonwork Ambari配置Hive集成Hbase的java开发maven配置

    集群环境 ambari 2.7.3 hdp/hortonwork 2.6.0.3 maven <dependency> <groupId>org.apache.hive< ...

  3. XE10开发的APP对于苹果IPV6上架要求的处理(DelphiTeacher)

    1.服务器必须使用域名.不能使用IP地址2.Indy的话,域名加[]3.DataSnap的话,Params.Values['CommunicationIPVersion'] :='IP_IPv6';4 ...

  4. [LeetCode 题解]: Container With Most Water

    Given n non-negative integers a1, a2, ..., an, where each represents a point at coordinate (i, ai).  ...

  5. Backup--批量备份和还原

    -----------------------------批量备份数据------------------------------------------- Use master GO /*===== ...

  6. Win RT Webview获取cookie

    方法1: HttpBaseProtocolFilter filter = new HttpBaseProtocolFilter(); var cookis = filter.CookieManager ...

  7. Inno Setup卸载时注销bho

    Inno setup是一个制作安装包的免费工具,比如你用Qt开发完成一款软件,拿Inno setup打个安装包甩给客户安装就好了. 但是bho插件在注册后,万一用户卸载软件时,bho插件还是躺在管理加 ...

  8. 食物(矩阵快速幂)(DP)

    这个题..我们可以想到用递推写!!qwq(好吧,其实我的DP水平不高啊qwq) 就是我们以两个为单位(一共九种组合情况),然后往后面推下一位的情况. 通过手动模拟,我们可以找到它们之间的递推关系(详见 ...

  9. softmax,softmax loss和cross entropy的讲解

    1 softmax 我们知道卷积神经网络(CNN)在图像领域的应用已经非常广泛了,一般一个CNN网络主要包含卷积层,池化层(pooling),全连接层,损失层等.这一篇主要介绍全连接层和损失层的内容, ...

  10. pc端美化select,jquery获取select中的option的text值

      代码: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF ...