彼此比较时,它们各自的优缺点是什么?
在Java脚本中,应在哪种情况下使用==
而不是localeCompare
?
最佳答案
localeCompare
与==
不同。当使用==
比较两个变量时,将检查变量是否具有相同的内容。这将返回一个 bool(boolean) 值(true / false)。但是,localeCompare
不会返回 bool(boolean) 值,而是返回一个int值。
当两个变量相同时,您将收到0
,但是,如果变量不同,则将收到1
或-1
。该值基于第一个变量是按排序顺序位于第二个变量之前还是之后。
因此,我本人在纯粹验证两个变量是否相同时会使用==
,但是当您想要查看按排序顺序排在最前面的变量时,localeCompare
可以派上用场,但是它可以用于比较两个变量以查看它们是否是相同的。
string a = "hello";
string b = "world";
a == b // returns false
a.localeCompare(b); // returns -1
为了稍微回答您的问题,以下是使用给定示例之一的优点/缺点:
使用
==
使用
localeCompare