彼此比较时,它们各自的优缺点是什么?
在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

为了稍微回答您的问题,以下是使用给定示例之一的优点/缺点:

使用==
  • 返回 bool(boolean) 值,而不是字符串/整数/ ...
  • 大多数人更容易阅读

  • 使用localeCompare
  • 返回整数(-1、0或+1)
  • 可用于对变量
  • 进行排序

    09-25 20:00