迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 >

在 Scala 中比较字符串

作者:迹忆客 最近更新:2023/03/24 浏览次数:

在本文中,我们将学习如何在 Scala 编程语言中比较两个字符串。

如果两个字符串具有相同的字符序列,则认为它们相等。现在,让我们看看 Scala 中比较字符串的不同方法。


在 Scala 中使用 equals() 方法比较字符串

在 Scala 中,String 类具有 equals() 方法来检查两个字符串是否相等。

语法:

string_one.equals(string_two)

如果 string_onestring_two 相等,该函数返回 true

示例代码:

object MyClass {

    def main(args: Array[String]) {

        val one = "Tony"
        val two = "Tony"
        val ans = one.equals(two)
        println(ans)

    }
}

输出:

true

需要注意的一点是 equals() 方法区分大小写,这意味着 tonyTony 的处理方式不同。为了克服这个问题,我们可以使用 String 类中的 equalsIgnoreCase() 方法。

示例代码:

object MyClass {

    def main(args: Array[String]) {

        val one = "Tony"
        val two = "toNy"
        val ans = one.equalsIgnoreCase(two)
        println(ans)

    }
}

输出:

true

在 Scala 中使用 == 运算符比较字符串

我们可以使用 == 方法在 Scala 中比较两个字符串。

语法:

string_one == string_two

== 方法检查 string_onestring_two 的相等性。如果两个字符串相等,则返回 true;否则,它返回 false

示例代码:

object MyClass {

    def main(args: Array[String]) {

        val one = "tony"
        val two = "tony"
        if(one==two)
           println(true)
        else
        println (false)

    }
}

输出:

true

如果我们知道字符串区分大小写,那么使用 == 优于 equals() 方法的一个主要优点是,即使其中一个字符串为 null,它也不会抛出 NullPointerException

示例代码:

object MyClass {

    def main(args: Array[String]) {

        val one = "tony"

        if(one == null)
           println(true)
        else
        println (false)

    }
}

输出:

false

在后端,== 方法首先检查 null 值,然后使用第一个字符串对象调用 equals() 方法以检查它们是否相等。由于这个原因,== 方法不会以区分大小写的方式比较字符串。

示例代码:

object MyClass {

    def main(args: Array[String]) {
        val one = "tony"
        val two = "TONY"
        if(one == two)
           println(true)
        else
        println (false)

    }
}

输出:

false

为了克服这种区分大小写的情况,我们可以将两个字符串都转换为大写或小写,然后进行比较。

示例代码:

object MyClass {

    def main(args: Array[String]) {
        val one = "tony"
        val two = "TONY"
        if(one.toLowerCase() == two.toLowerCase())
           println(true)
        else
        println (false)

    }
}

输出:

true

在上面的代码中,我们使用 toLowerCase() 方法将两个字符串转换为小写,然后我们使用 == 方法来比较它们。


Java 和 Scala 中的相等检查

Java 和 Scala 在相等方面有不同的定义。Java 主要有两种检查相等的方法:一种是使用 == 运算符,它严格检查 reference 相等,另一种是 equals() 方法,可以重写以检查对象。

在 Scala 中,== 方法可用于比较任何类型,这意味着如果它们引用相同的对象或包含相同的值,a==b 将返回 true。在 Scala 中,== 方法是在任何类中定义的 final 方法。

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便