首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

equal()和equalsIgnoreCase()对于相等的字符串返回false

在这个问答内容中,equal()equalsIgnoreCase()是两个用于比较字符串是否相等的方法。equal()方法是用于比较两个字符串是否相等,而equalsIgnoreCase()方法是用于比较两个字符串是否相等,但忽略大小写。

当两个字符串相等时,equal()方法返回true,而equalsIgnoreCase()方法也返回true。如果两个字符串不相等,equal()方法返回false,而equalsIgnoreCase()方法也返回false

在使用这两个方法时,需要注意以下几点:

  1. equal()方法是区分大小写的,如果两个字符串只有大小写不同,equal()方法返回false
  2. equalsIgnoreCase()方法是不区分大小写的,如果两个字符串只有大小写不同,equalsIgnoreCase()方法返回true
  3. 如果两个字符串中有空字符串,equal()方法返回false,而equalsIgnoreCase()方法返回true
  4. 如果两个字符串中有null值,equal()方法返回false,而equalsIgnoreCase()方法抛出NullPointerException异常。

推荐的腾讯云相关产品和产品介绍链接地址:

  1. 腾讯云云服务器:https://cloud.tencent.com/product/cvm
  2. 腾讯云数据库:https://cloud.tencent.com/product/cdb
  3. 腾讯云对象存储:https://cloud.tencent.com/product/cos
  4. 腾讯云CDN:https://cloud.tencent.com/product/cdn
  5. 腾讯云API网关:https://cloud.tencent.com/product/apigateway

以上是腾讯云的一些常用产品,可以满足不同场景下的需求。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • =false 2!=true 返回都是true

    前言 今天突然想起一个奇怪问题,记录一下,我在控制台执行内容如下: 由上图可见,2 != false 2 != true 返回值竟然都是true,那么为什么呢,请看下文: 1 !...= 操作符作用 != 是“不等于”操作符。它会在比较前执行类型转换,然后再比较两个值是否不相等。 在 JavaScript 中,2 != false 2 !...= false false 会被转换为数字类型。根据 JavaScript 转换规则,false 被转换为 0。 现在表达式变成了 2 != 0。 2 0 不相等,因此返回 true。 2 !...根据 JavaScript 转换规则,true 被转换为 1。 现在表达式变成了 2 != 1。 2 1 不相等,因此返回 true。 总结 2 !...= false 返回 true 是因为 2 0 不相等。 2 != true 返回 true 是因为 2 1 不相等。 这就是为什么 2 != false 2 !

    8910

    Java中关系运算符,你真的掌握了吗?

    Java-关系运算符 简介   关系运算符是Java编程语言中基本运算符之一,通常用于比较两个值之间大小、相等性等关系,并以布尔类型结果返回比较运算结果真假值。...关系运算符结果返回是布尔类型值,即true或false对于字符串类型比较,Java中关系运算符实际上比较字符串ASCII码值,因此一定要注意大小写空格等问题。...首先定义了两个整型变量ab,分别赋值为105,然后定义两个字符串变量cd,分别赋值为"Hello""hello"。...接下来通过关系运算符比较ab大小、判断ab是否相等、判断cd是否相等以及忽略大小写后判断cd是否相等,并将结果保存在相应布尔型变量中。最后输出这些布尔型变量值。...Java关系运算符具有通用性,可以用于任何基本数据类型比较。 缺点 对于字符串类型比较,Java中关系运算符实际上比较字符串ASCII码值,因此需要特别注意大小写空格等问题。

    25381

    《Effective Java》读书笔记(二)之对于所有对象都通用方法

    如果类具有自己特有的“逻辑相等概念(不同于对象等同概念),而且超类没有覆盖equals以实现期望行为,就需要进行覆盖,这通常属于“值类”情形,例如IntegerDate。...实例受控,确保“每个值最多只存在一个对象”类,枚举通常属于这种类型。对于枚举类型来说, 逻辑相等与对象相等是同一回事, 因此不需要覆盖equals方法。...equals改写规范: 1)自反性:对于任何非null引用值x,x.equals(x)一定为true 2)对称性:对于任何非null引用值xy,当且仅当x.dquals(y)为true;...4)一致性:对于任何非null引用值xy,如果用于equals比较对象信息没有被修改的话,那么多次调用x.dquals(y)返回值是一致 5)对于非null引用值x,x.equals...企图String进行比较操作,假设我们有一个不区分大小字符串一个普通字符串: CaseInsensitiveString cis = new CaseInsensitiveString("Test

    29610

    java string 比较前几个字符_Java基础之字符串详细比较

    equals( ) equalsIgnoreCase( )  使用equals( )方法比较两个字符串是否相等。...如果两个字符串具有相同字符长度,它返回true,否则返回false。这种比较是区分大小写。  为了执行忽略大小写比较,可以调用equalsIgnoreCase( )方法。...如果两个字符串具有相同字符长度,它也返回true,否则返回false。  ...如果字符串匹配,返回true。否则返回false。  ...比较结果返回并被解释如表所示:  字符串比较结果及其含义  值含义小于0调用字符串小于str  大于0调用字符串大于str  等于0两个字符串相等  下面是一个对字符串数组进行排序例子程序。

    2.1K20

    Java编程一些小技巧-----基础语法篇(2)

    9.在java中如何对比(compare)string ==对应是指针相等,也就是他们是否为同一个对象 .equals()对应是值相等,也就是逻辑相等 因此,如果你想检查两个字符串是否为相同值,那么应该用...同上 new String("test") == new String("test") // --> false // 这个返回true,是因为这种写法属于字符串字面量,编译器会维护一个常量池,相同字面量...字符串字面量之间对比,也可以用==(大家知其所以然即可,但没必要用==) 下面多举个字符串字面量例子,下面代码中,前四个对比,返回true,最后一个返回false。...方法,记得相对应地修改hashcode方法,否则将会违反这两个方法对等关系,如果两个对象是相等equal,那么两个对象调用hashCode必须产生相同整数结果,即:equal为true,hashCode...必须为true,equalfalse,hashCode也必须为false 如果要忽略大小写进行对比,可以用equalsIgnoreCase()方法 10.Map基于values

    53320

    Effective Java 2.0_中英文对照_Item 8

    它是: 自反性:对于任何非空引用值x,x.equals(x)必须返回true。 对称性:对于任何非空引用值xy,x.equals(y)必须返回true当且仅当y.equals(x)返回true。...一致性:对于任何非空引用值xy,x.equals(y)多次调用一致返回true或一致返回false,假设对象进行equals比较时没有修改任何信息。...对于非空引用值x,x.equals(null)必须返回false。...如果Point类使用了基于getClassequals方法,onUnitCircle将会返回false,无论CounterPoint实例x值y值是多少。...对于类中每一个“有效”字段,检查参数这个字段是否匹配这个对象对应字段。如果所有的这些测试都成功了,返回true;否则返回false

    49240

    Java基础专题(三):字符串

    检测字符串是否相等 可以使用equals方法判断两个字符串是否相等对于表达式: s.equals(t) 如果字符串 s 与字符串 t 相等,则返回true;否则,返回false。...需要注意,st可以是字符串变量,也可以是字符串字面量。如果要想检测两个字符串是否相等,而不区分大小写,可以使用equalsIgnoreCase方法。..."Hello".equalsIgnoreCase("hello") // true 一定不要使用==运算符检测两个字符串是否相等!!!...equals(Object other) 如果字符串与other相等返回true boolean equalsIgnoreCase(String other) 如果字符串与other相等(忽略大小写...String trim() 返回一个新字符串,这个字符串将删除了原始字符串头部尾部空格。

    60840

    Java - String源码解析及常见面试问题

    当判断参数为 String 类型之后,会循环对比两个字符串每一个字符,当所有字符都相等返回 true,否则则返回 false。...另外还有一个 equalsIgnoreCase(), 忽略字符串大小写之后进行字符串对比。...举个例子 “53334433”.compareTo(“3”) ----> 2 【取最小长度,第一个字符 5 3 比,转成char 比较, 不相等 返回 5 - 3 = 2】 再来个例子: 两个字符串分别存储是...1 2,返回值是 -1;如果存储是 1 1,则返回值是 0 ,如果存储是 2 1,则返回值是 1。...---- Q4: == equals 区别是什么 【==】 对于基本数据类型来说, 比较 “值”是否相等 对于引用类型来说, 比较引用地址是否相同 Object#equals() 其实就是 =

    18620

    java——String相关方法汇总

    equal() 想要怕段两个字符串是否相等,用==是有它风险,就例如: String str1 = "Hello"; String str2 = "Hello"; System.out.println...(str1 == str2); // 执行结果 true 以上创建字符串方式似乎对运行结果没有产生什么影响,但是如果深究其内涵,了解到str1str2所指向对象相同(类似于C语言指针),指向同一个对象...,判断相等当然会返回true。...但是用这种创建方式,可以看到结果并不符合预期,是因为两个新创建对象指向不同内存 因此,如果相比较两个字符串是否相等,需要用到equal()方法。...Haha"; System.out.println(str1.equalsIgnoreCase(str2));//忽略大小写比较 判断字符串子串 public static void

    44720

    PHP- 运算符-比较运算符(一)

    比较运算符是编程语言中最基本运算符之一,用于比较两个值之间大小、相等不等性。在PHP中,比较运算符包括等于、不等于、大于、小于、大于等于小于等于六个运算符。...等于运算符(==)等于运算符用于比较两个值是否相等,如果两个值相等返回true,否则返回false。这个运算符会尝试将两个操作数转换为相同类型,并进行比较。...=)不等于运算符用于比较两个值是否不相等,如果两个值不相等返回true,否则返回false。这个运算符也会尝试将两个操作数转换为相同类型,并进行比较。...全等于运算符(===) 全等于运算符用于比较两个值是否完全相同,即值相等且类型相同。如果两个值相等且类型相同,返回true,否则返回false。...“x does not equal y”,因为全等于运算符不会尝试将两个操作数转换为相同类型,所以$x类型为整数,而$y类型为字符串

    94240

    【Shell编程】| if 判断五个关键点

    2、算数比较 算数比较包括大于、小于、等于、不等于、大于等于、小于等于 运算符 说明 举例 -eq equal,检测两个数是否相等相等返回 true。 [ b ] 返回 false。...-ne not equal,检测两个数是否不相等,不相等返回 true。 [ b ] 返回 true。 -gt greater than,检测左边数是否大于右边,如果是,则返回 true。...-ge greater equal,检测左边数是否大于等于右边,如果是,则返回 true。 [ b ] 返回 false。...-nenot equal,检测两个数是否不相等,不相等返回 true。[ a -ne b ] 返回 true。-gtgreater than,检测左边数是否大于右边,如果是,则返回 true。...运算符 说明 举例 = 检测两个字符串是否相等相等返回 true。 [[ b ]] 或者 [[ b]] 返回 false。 != 检测两个字符串是否不相等,不相等返回 true。

    25930

    《Java从入门到失业》第四章:类对象(4.2):String类

    加号StringBuilder都可以拼接非字符串类型(可以查看API,有很多个append方法)。 对于需要拼接多个字符串时候,强烈建议使用StringBuilder。...() 删除字符串前后空白,并返回一个新字符串 boolean equals(Object anObject) 检测2个字符串是否相等 boolean equalsIgnoreCase(String anotherString...) 检测2个字符串在忽略大小写情况下是否相等 String substring(int beginIndex) 截取从beginIndex到末尾字符串返回 String substring(int...比较2个字符串是否相等,用equals方法,如果相等返回ture,否则返回false。如果想不区分大小写比较是否相等,则可以使用equalsIgnoreCase方法。...因为==运算符比较是2个字符串是否存放在同一个内存位置上。但是事实上,对于2个字符内容完全一样字符串,是很有可能存放在不同内存空间,因此用==比较结果将为false

    47210

    String 详解以及内存分析

    boolean equalsIgnoreCase(String other) 如果字符串与 other 相等(忽略大小写),则返回 true int indexOf(String str) lastIndexOf...String toUpperCase() 返回一个新字符串,该串将原始字符串所有小写字母改成大写字母 String trim() 返回一个新字符串,该串删除了原始字符串头部尾部空格 注:在 Java...字符串相等判断 equals 方法用来检测两个字符串内容是否相等。...如果字符串 s t 内容相等,则s.equals(t) 返回 true,否则返回 false. s t 既可以是字符串变量,也可以是字符串常量,例如: “Hello”.equals(t); 要测试两个字符串除了大小写区别外是否是相等...,需要使用 equalsIgnoreCase 方法,例如: “Hello”.equalsIgnoreCase(“hellO”); //true 判断字符串是否相等不要使用 "==","=="比较是引用是否相等

    78220

    Effective.Java 读书笔记(8)关于equals方法

    (z)也返回true 一致性,对于任意非空引用x,y,不管多少次调用x.equals(y) ,返回值有且只有同一个(一直是true或者一直false对于任意非空引用x,x.equals(null...现在你应该知道违反规范危险了吧,下面对于这些规范做出更加细致讨论,好消息是这些规范其实并不复杂,只要你一旦明白,对于坚持这些规范也就变得很简单了 自反性,第一个条件,代表着一个类必须自身相等,很难去想象无意中会违反这个规范...如果null被传入的话类型检查会返回false,故并不需要分离出一个null检查 总结一下吧,下面对于一个高质量equals方法清单 1.如果参数是对这个对象引用的话,使用==操作符来检查 如果相等...,它保证了能够成功转换 4.对于类中每个”重要“域,检查该参数域是否匹配这个对象相应域 如果所有这些测试都成功的话,返回true,否则返回false。...并且不用只是问自己;写一个单元测试检查一下这些属性是否具备,如果不,找出原因,并且修好它,当然了,你equal方法也要满足其他两个属性,自反性非空性,但是这两个一般是没有问题 对于具体例子来说,

    40340

    Java中==与equals区别

    true n==m输出结果为true,这个很容易理解,变量n变量m存储值都为3,肯定是相等。...,仅规定其只能够取字面值"true""false") 对于这8种基本数据类型变量,变量直接存储是“值”,因此在用关系操作符==来进行比较时,比较就是 “值” 本身。...也就是说,对于 int n=3; int m=3;  变量n变量m都是直接存储"3"这个数值,所以用==比较时候结果是true。 而对于非基本数据类型变量,在一些书籍中称作为引用类型变量。...; } } return false; } 可以看出,String类对equals方法进行了重写,用来比较指向字符串对象所存储字符串是否相等。...而对于String str = new String(“abc”)代码,则一概在堆中创建新对象,而不管其字符串值是否相等,是否有必要创建新对象,从而加重了程序负担。

    5210

    shell基础编程(一)

    =y ] 返回false (二)看看关系运算符 关系运算符只支持数字,不支持字符串,除非字符串值是数字。...-ne 检测两个数是否相等,不相等返回 true。 [ x −ne y ] 返回 false。 -gt 检测左边数是否大于右边,如果是,则返回 true。...这些用到地方就是在条件判断时候了。而接下来内容就要详细介绍条件判断模块 (五)字符串运算符 运算符 说明 举例 = 检测两个字符串是否相等相等返回 true。...[ "a" = "b" ] 返回 false。 != 检测两个字符串是否不相等,不相等返回 true。 [ "a" != "b" ] 返回 true。...-z 检测字符串长度是否为0,为0返回 true。 [ -z "a" ] 返回 false。 -n 检测字符串长度是否不为 0,不为 0 返回 true。 [ -n “a” ] 返回 true。

    45120
    领券