java產(chǎn)生隨機字符串 如何生成隨機不重復(fù)的8位字符串,字符串包括數(shù)字和字母?
如何生成隨機不重復(fù)的8位字符串,字符串包括數(shù)字和字母?沒有特別好的方法合成有62個字符然后你取隨機數(shù)x 0~62每次對應(yīng)一個[x]取8次組成一個字符串將其存儲在HashMap中停止直到HashMap中
如何生成隨機不重復(fù)的8位字符串,字符串包括數(shù)字和字母?
沒有特別好的方法
合成有62個字符
然后你取隨機數(shù)x 0~62每次對應(yīng)一個[x
]取8次組成一個字符串
將其存儲在HashMap中
停止直到HashMap中的數(shù)字滿足要求
代碼如下,以供參考:
java隨機字符串生成?
你玩過牌嗎?我們有一副牌,洗干凈。再打開前幾張牌,基本上就可以滿足你的要求了。他很隨意,保證不會重蹈覆轍。
(“a”.“z”)。到“a.排序{Rand}[0,8]。Join
這個ruby代碼是在手機上編寫的,還沒有經(jīng)過測試,但是應(yīng)該是正確的。它的功能是為您提供一個不重復(fù)的8位隨機字符串。
也許使用ruby的人不多。讓我一步一步地解釋。首先,a到Z表示一個范圍。在a之后,我們有一個數(shù)組,每個元素都是一個字符。Sort是用于排序的數(shù)組方法。他可以傳入一個lambda表達式,{Rand}形式上是sort方法的一個參數(shù),邏輯上是排序的基礎(chǔ),這樣他就可以得到一個隨機排序的數(shù)組。至于[0,8],它表示我們從數(shù)組的開頭取8個元素。Join將數(shù)組連接成一個字符串。
這段代碼的性能不是很好,比如不應(yīng)該完全排序,但是很酷,向我們展示了ruby強大的魅力。這就是我回答這個問題的原因。我希望能告訴你ruby,一種對程序員最友好的語言。