Scala中的mkString的具體使用方法
1.mkString()方法的使用:
- mkString(seq:String)方法是將原字符串使用特定的字符串seq分割。
- mkString(statrt:String,seq:String,end:String)方法是將原字符串使用特定的字符串seq分割的同時,在原字符串之前添加字符串start,在其后添加字符串end。
object Test {
def main(args: Array[String]): Unit = {
var name : String = "Hello LittleLawson"
var age :Int = 2
println(name.mkString)
println(name.mkString(" "))//separate string with space
var str0 = "scala"
println(str0.mkString(","))//separate string with comma
println(str0.mkString("begin",",","end"))
/*
1.mkString is used in the inner List,That is say ,Elements in the list is applied.
*/
val a = List(1,2,3,4)
val b = new StringBuilder()
println(a.mkString("List(" , ", " , ")"))
}
}
執(zhí)行結果如下:
Hello LittleLawson
H e l l o L i t t l e L a w s o n
s,c,a,l,a
begins,c,a,l,aend
List(1, 2, 3, 4)Process finished with exit code 0
2.scala通過mkString方法把一個集合轉(zhuǎn)化為一個字符串
Problem
如果你想要把集合元素轉(zhuǎn)化為字符串,可能還會添加分隔符,前綴,后綴。
Solution
使用mkString方法來打印一個集合內(nèi)容,下面給一個簡單的例子:
scala> val a = Array("apple", "banana", "cherry")
a: Array[String] = Array(apple, banana, cherry)
scala> a.mkString
res3: String = applebananacherry
使用mkString方法你會看到結果并不漂亮,我們來加一個分隔符:
scala> a.mkString(",")
res4: String = apple,banana,cherry
scala> a.mkString(" ")
res5: String = apple banana cherry
這樣看起來就好看多了,同樣你可以添加一個前綴和一個后綴:
scala> a.mkString("[", ", ", "]")
res6: String = [apple, banana, cherry]
如果你想把一個潛逃集合轉(zhuǎn)化為一個字符串,比如嵌套數(shù)組,首先你要展開這個嵌套數(shù)組,然后調(diào)用mkString方法:
scala> val a = Array(Array("a", "b"), Array("c", "d"))
a: Array[Array[String]] = Array(Array(a, b), Array(c, d))
scala> a.flatten.mkString(",")
res7: String = a,b,c,d
Discussion
你可以調(diào)用集合的toString方法,但是它返回帶有集合元素信息的集合名稱:
scala> val v = Vector("apple", "banana", "cherry")
v: scala.collection.immutable.Vector[String] = Vector(apple, banana, cherry)
scala> v.toString
res8: String = Vector(apple, banana, cherry)
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
Java異常繼承結構解析_動力節(jié)點Java學院整理
這篇文章主要介紹了Java異常繼承結構解析的相關知識,需要的朋友可以參考下2017-04-04
Java 單向隊列及環(huán)形隊列的實現(xiàn)原理
本文主要介紹了Java 單向隊列及環(huán)形隊列的實現(xiàn)原理,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-10-10
SpringCloud?openfeign聲明式服務調(diào)用實現(xiàn)方法介紹
在springcloud中,openfeign是取代了feign作為負載均衡組件的,feign最早是netflix提供的,他是一個輕量級的支持RESTful的http服務調(diào)用框架,內(nèi)置了ribbon,而ribbon可以提供負載均衡機制,因此feign可以作為一個負載均衡的遠程服務調(diào)用框架使用2022-12-12
SpringBoot使用prometheus監(jiān)控的示例代碼
這篇文章主要介紹了SpringBoot使用prometheus監(jiān)控的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2021-03-03
IDEA項目啟動時Flyway數(shù)據(jù)庫遷移中的checksum不匹配問題及最新解決方案
面對IDEA項目啟動時報出的Flyway遷移校驗和不匹配問題,核心在于保持遷移腳本的一致性、正確管理和理解Flyway的工作機制,本文介紹IDEA項目啟動時Flyway數(shù)據(jù)庫遷移中的checksum不匹配問題及最新解決方案,感興趣的朋友一起看看吧2024-01-01
spring?boot?executable?jar/war?原理解析
spring boot里其實不僅可以直接以 java -jar demo.jar的方式啟動,還可以把jar/war變?yōu)橐粋€可以執(zhí)行的腳本來啟動,比如./demo.jar,這篇文章主要介紹了spring?boot?executable?jar/war?原理,需要的朋友可以參考下2023-02-02

