06-scala入门-字符串
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#
-
char charAt(int index):返回指定位置的字符
-
int compareTo(Object o):比较字符串与对象
-
int compareTo(String anotherString):按字典顺序比较两个字符串
-
int compareToIgnoreCase(String str):按字典顺序比较两个字符串,不考虑大小写
-
boolean contentEquals(StringBuffer sb):将此字符串与指定的 StringBuffer 比较
-
boolean endsWith(String suffix):测试此字符串是否以指定的后缀结束
-
boolean equals(Object anObject):将此字符串与指定的对象比较
-
boolean equalsIgnoreCase(String anotherString):将此 String 与另一个 String 比较,不考虑大小写
-
String replace(char oldChar, char newChar):返回一个新的字符串,它是通过用 newChar 替换此字符串中出现的所有 oldChar 得到的
-
String[] split(String regex):根据给定正则表达式的匹配拆分此字符串
-
String substring(int beginIndex, int endIndex):返回一个新字符串,它是此字符串的一个子字符串
-
String trim():删除指定字符串的首尾空白符