我需要一些測試公司的名稱,如「rnd_company_blah23haf9」,「rnd_company_g356fhg57」等生成的字母數字字符串
是否有可能像做
import scala.util.Random
val company = s"rnd_company_${Random.alphanumeric take 10 ?????}"
只要有人可以填寫??? ??當然。
我需要一些測試公司的名稱,如「rnd_company_blah23haf9」,「rnd_company_g356fhg57」等生成的字母數字字符串
是否有可能像做
import scala.util.Random
val company = s"rnd_company_${Random.alphanumeric take 10 ?????}"
只要有人可以填寫??? ??當然。
使用.mkString("")
從Stream
創建String
:
scala> val company = s"rnd_company_${Random.alphanumeric take 10 mkString}"
company: String = rnd_company_BbesF0EY1o
你有一個例子here
scala> val x = Random.alphanumeric
x: scala.collection.immutable.Stream[Char] = Stream(Q, ?)
scala> x take 10 foreach println
Q
n
m
x
S
Q
R
e
P
B
所以,你可以試試這個:
import scala.util.Random
val company = s"rnd_company_${(xx take 10).mkString}"
這正是例子我開始。你的代碼中有些東西缺失(Random。*)? – FelixHJ
我忘了將它添加到示例中。謝謝 –
旁註:我的編譯器告訴我在「」刪除不必要的偏見。所以你可以直接寫'take 10 mkString'「'。 – Wolfsblvt
不需要顯式指定空字符串。只是'Random.alphanumeric需要10 mkString' –