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 类型,因为 Scala 编译器会自动推断出字符串的类型为 String。
当然我们也可以直接显示的声明字符串为 String 类型,如下实例:
object Test {
val greeting: String = "Hello, World!"
def main(args: Array[String]) {
println( greeting )
}
}
们前面提到过 String 对象是不可变的,如果
你需要创建一个可以修改的字符串,可以使用 String Builder
类,如下实例:
object Test {
def main(args: Array[String]) {
val buf = new StringBuilder;
buf += 'a'
buf ++= "bcdef"
println( "buf is : " + buf.toString );
}
}
运行结果
buf is : abcdef
字符串长度
我们可以
使用 String.length() 方法来获取字符串长度
:
object Test {
def main(args: Array[String]) {
var palindrome = "www.runoob.com";
var len = palindrome.length();
println( "String Length is : " + len );
}
}
运行结果
String Length is : 14
字符串连接
concat
String 类中
使用 concat() 方法来连接两个字符串
:
string1.concat(string2);
实例演示:
“+”号
也可以使用+号来连接字符串
创建格式化字符串
String 类中你可以使
用 printf() 方法来格式化字符串并输出
,String format() 方法可以返回 String 对象而不是 PrintStream 对象。以下实例演示了 printf() 方法的使用:
object Test {
def main(args: Array[String]) {
var floatVar = 12.456
var intVar = 2000
var stringVar = "我爱scala!"
var fs = printf("浮点型变量为 " + "%f, 整型变量为 %d, 字符串为 " + " %s",
floatVar, intVar, stringVar)
println(fs)
}
}
返回指定位置字符
object Test9 {
def main(args: Array[String]) {
var s = "ATTCGATTAC"
println(s.charAt(0))
println(s.charAt(1))
}
}
--------- 结果 ------------
A
T
Process finished with exit code 0