标签列表
在Scala中进行字符串比较时,请使用'=='而不是equals方法
string
scala
equals
10
10
为什么在Scala中推荐使用
==
而不是
.equals
进行字符串比较?在StackOverflow中有很多问题不推荐在Java中使用引用相等性进行字符串比较,但为什么在Scala中建议做完全相反的事情?
-
Core_Dumped
7
4
尽管Scala运行在JVM上,但它并不是Java。更具体地说,Scala中的安全操作在Java中可能并不安全。
- Elliott Frisch
3
在Scala中,“==”和“.equals”有什么区别?
- Govind Singh
1
你从哪里得到
==
是引用相等的想法的?
- Jörg W Mittag
@JörgWMittag https://dev59.com/mXA65IYBdhLWcg3wrgoa
- Core_Dumped
1
那个问题是针对完全不同的编程语言的,与 [tag:scala] 毫无关系。
- Jörg W Mittag
显示剩余2条评论
1
个回答
24
24
在Scala中,
==
和
equals
等效,不同之处在于前者可以处理
null
,因此不会抛出
NullPointerException
。
如果要实现引用相等性,请使用
eq
。
-
Jean Logeart
2
4
==
和
equals
之间还有其他细微差别,例如
==
能够识别数字等价性:
1==1L
但是
!1.equals(1L)
。通常情况下,除非有明确的理由不这样做,否则使用
==
是合理的运算符。
- blintend
没错!在Scala中,“==”是首选。
- Jean Logeart
回答链接
网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接
相关问题
4
在Scala中覆盖equals方法
10
在Java中使用'=='代替.equals进行字符串比较
3
快速字符串搜索如startsWith()而不是equals()
12
使用“==”还是Equals进行字符串比较?
4
覆盖Equals方法并与字符串比较
3
我能否使用equals()方法与多个字符串进行比较?
4
比较字符串和整数时使用equals方法
15
字符串比较: operator==() vs. Equals()
6
equals和compareTo方法中哪个更快?-字符串比较速度问题
21
使用 Comparator 而不是 equals() 来比较两个 Java 集合。
==
是引用相等的想法的? - Jörg W Mittag