06-scala入门-字符串

2019-06-15  本文已影响0人  kang_james

Scala 字符串

以下实例将字符串赋值给一个常量:

object Test {
   val greeting: String = "Hello,World!"
   def main(args: Array[String]) {
      println( greeting )
   }
}

以上实例定义了变量 greeting,为字符串常量,它的类型为 String (java.lang.String)。
在 Scala 中,字符串的类型实际上是 Java String,它本身没有 String 类。
在 Scala 中,String 是一个不可变的对象,所以该对象不可被修改。这就意味着你如果修改字符串就会产生一个新的字符串对象。
但其他对象,如数组就是可变的对象。接下来我们会为大家介绍常用的 java.lang.String 方法

创建字符串

示例如下:

var greeting = "Hello World!";
//或者
var greeting:String = "Hello World!";

String 对象是不可变的,如果你需要创建一个可以修改的字符串,可以使用 String Builder 类
示例如下:

object Test {
   def main(args: Array[String]) {
      val buf = new StringBuilder
      buf += 'a'
      buf ++= "bcdef"
      println("buf is :" + buf.toString)
  }
}

字符串长度

我们可以使用 length() 方法来获取字符串长度:

object Test {
   def main(args: Array[String]) {
      var palindrome = "www.runoob.com";
      var len = palindrome.length();
      println( "String Length is : " + len );
   }
}

字符串连接

有两种方式
第一种方式:String 类中使用 concat() 方法来连接两个字符串
string1.concat(string2)
第二种方式:同样你也可以使用加号(+)来连接

object Test {
   def main(args: Array[String]) {
      var str1 = "努力、";
      var str2 =  "坚持、";
      var str3 =  "脚踏实地、";
      var str4 =  "学的不仅是技术,更是梦想!";
      println( str1 + str2 );
      println( str3.concat(str4) );
   }
}

创建格式化字符串

String 类中你可以使用 printf() 方法来格式化字符串并输出,String format() 方法可以返回 String 对象而不是 PrintStream 对象
示例如下:

object Test {
   def main(args: Array[String]) {
      var floatVar = 12.456
      var intVar = 2000
      var stringVar = "菜鸟教程!"
      var fs = printf("浮点型变量为 " +
                   "%f, 整型变量为 %d, 字符串为 " +
                   " %s", floatVar, intVar, stringVar)
      println(fs)
   }
}

String 方法(j简单列举一点)

想了解更多的方法,可以查看scala的API:https://docs.scala-lang.org/?_ga=2.214371351.1484775966.1560529497-94414233.1560529497#

  1. char charAt(int index):返回指定位置的字符

  2. int compareTo(Object o):比较字符串与对象

  3. int compareTo(String anotherString):按字典顺序比较两个字符串

  4. int compareToIgnoreCase(String str):按字典顺序比较两个字符串,不考虑大小写

  5. boolean contentEquals(StringBuffer sb):将此字符串与指定的 StringBuffer 比较

  6. boolean endsWith(String suffix):测试此字符串是否以指定的后缀结束

  7. boolean equals(Object anObject):将此字符串与指定的对象比较

  8. boolean equalsIgnoreCase(String anotherString):将此 String 与另一个 String 比较,不考虑大小写

  9. String replace(char oldChar, char newChar):返回一个新的字符串,它是通过用 newChar 替换此字符串中出现的所有 oldChar 得到的

  10. String[] split(String regex):根据给定正则表达式的匹配拆分此字符串

  11. String substring(int beginIndex, int endIndex):返回一个新字符串,它是此字符串的一个子字符串

  12. String trim():删除指定字符串的首尾空白符

上一篇下一篇

猜你喜欢

热点阅读