首页 > 编程语言 >Java基本类型和包装类什么情况下判断相等(“==“或“equals“)?

Java基本类型和包装类什么情况下判断相等(“==“或“equals“)?

时间:2023-03-21 13:57:04浏览次数:42  
标签:Java 包装 equals System inta strb stra out

Java中判断两个变量是否相等有两种方式:一种是利用 == 运算符,另一种是利用equals方法。如果变量是基本类型,那么使用 == 和使用equals会得到相同的结果,都是判断变量的值是否相对。

如果变量是引用类型,== 运算符判断变量是否指向同一引用对象,equals判断变量"值"是否相等。

Java值类型对应的包装类(Boolean、Byte、Short、Integer、Long、Float、Double、Charcater)可以利用 == 运算符进行值判断。

int inta = 65;
float floata = 65.0f;
Integer intb = 65;
Float floatb = 65.0f;
//inta == floata根据值判断,结果是true
System.out.println("inta == floata:" + (inta == floata));		
//inta == intb根据值判断,结果是true
System.out.println("inta == intb:" + (inta == intb));
//inta == floatb根据值判断,结果是true
System.out.println("inta == floatb:" + (inta == floatb));
 
String stra = "测试";
String strb = new String("测试");
String strc = new String("测试");
String strd = "测试";
//stra和strb指向不同的对象,结果是false
System.out.println("stra == strb:" + (stra == strb));
//stra和strd指向同一个对象,结果是true
System.out.println("stra == strd:" + (stra == strd));
//strb和strc指向不同的对象,结果是false
System.out.println("strb == strc:" + (strb == strc));
//strb和strc的值一样,结果是true
System.out.println("strb equals strc:" + (strb.equals(strc)));
//stra和strb的值一样,结果是true
System.out.println("stra equals strb:" + (stra.equals(strb)));

标签:Java,包装,equals,System,inta,strb,stra,out
From: https://www.cnblogs.com/littlewrong/p/17239722.html

相关文章

  • javaSE-day03(常用API一)
    API(ApplicationProgramminginterface)意思是应用程序编程接口,说人话就是Java帮我们写好的一些程序,如:类、方法等,我们直接拿过来用就可以解决一些问题。可以在API文档进行查......
  • JavaScript Scope All In One
    JavaScriptScopeAllInOneGlobalScope/全局作用域ScriptScope/脚本作用域LocalScope/局部作用域(函数作用域)BlockScope/块级作用域({}作用域)C......
  • Java入门_一维数组_第一题_升序数组
    声明咱是个新手,没啥技术只会最基础的,见谅哈。更简化的方法还请大佬指教。题目:已知有个升序数组的数组,要插入一个元素,该数组顺序依然是升序。例如:{25,49,74,......
  • java.io.IOException: Packet len1213486160 is out of range!
    部署otter,启动node的时候一直报错:2023-03-2110:39:24.615[main-SendThread(10.224.250.251:8080)]WARNorg.apache.zookeeper.ClientCnxn-Session0x0forserver......
  • java发送验证码
    导入maven包(commons-email)<dependency><groupId>org.apache.commons</groupId><artifactId>commons-email</artifactId><version>1.5</version></......
  • Java 获取最近12个月数据,包含当月数据
    List<String>dateList=newArrayList<>();Calendarcalendar=Calendar.getInstance();//月份最大为11最小为0所以设置初始月份时加1,需要获取到当前月份所以设置......
  • javaSE-day12(多线程)
    1.多线程的常用方法Thread提供了很多与线程操作相关的方法方法:publicvoidrun():线程的任务方法publicvoidstart():启动线程publicStringgetName():获取当前......
  • javascript 给Object扩展extend方法
    javascript给Object扩展extend方法mdj280759843于2011-04-1213:16:46发布1006收藏分类专栏:JS文章标签:JavaScriptjQueryUIprototype框架ViewUI版权JS专栏......
  • 剑指 Offer 07. 重建二叉树(java解题)
    目录1.题目2.解题思路个人思路3.数据类型功能函数总结4.java代码1.题目输入某二叉树的前序遍历和中序遍历的结果,请构建该二叉树并返回其根节点。假设输入的前序遍......
  • Java之JasyptUtil类的使用
    在配置文件中,我们通常会对中间件密码进行加密。手动加密可以使用JasyptUtil类,代码如下:packagecom.cmit.kapok.system.utils;importorg.jasypt.encryption.pbe.Standa......