我正在尝试生成一个随机字符串,这些是我发现的可能性:
Random.nextPrintableChar()
, 打印字母、数字、标点符号 Random.alphanumeric.take(size).mkString
, 打印字母和数字 Random.nextString(1)
, 几乎每次都打印中文字符 lol Random is scala.util.Random
size
is an Int
第二个选项几乎可以完成工作,但我需要从一封信开始。我找到了
Random.nextPrintableChar()
但它也打印标点符号。解决办法是什么?
到目前为止,我的解决方案是:
val low = 65 // A
val high = 90 // Z
((Random.nextInt(high - low) + low).toChar
灵感来自 Random.nextPrintableChar
执行:def nextPrintableChar(): Char = {
val low = 33
val high = 127
(self.nextInt(high - low) + low).toChar
}
最佳答案
找到了更好的解决方案:Random.alphanumeric.filter(_.isLetter).head
更好的解决方案是 jwvh commented :Random.alphanumeric.dropWhile(_.isDigit)
关于scala - 在 Scala 中生成随机字符串/字母,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34665566/