How to generate random string without repetition in Scala

1 Answer

0 votes
import scala.util.Random

object UniqueRandomStringGenerator {
  def generateUniqueRandomString(total: Int): String = {
    val chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"
    val usedChars = scala.collection.mutable.Set[Char]()
    val result = new StringBuilder

    while (result.length < total) {
      val randomIndex = Random.nextInt(chars.length)
      val randomChar = chars(randomIndex)
      if (!usedChars.contains(randomChar)) {
        result.append(randomChar)
        usedChars.add(randomChar)
      }
    }

    result.toString()
  }

  def main(args: Array[String]): Unit = {
    println(generateUniqueRandomString(15))
  }
}




/*
run:
  
HqL9jVg2ZlWcGO4
  
*/

 



answered Nov 5, 2024 by avibootz

Related questions

1 answer 108 views
1 answer 114 views
1 answer 110 views
1 answer 94 views
...