जब आप यादृच्छिक संख्या उत्पन्न करें अक्सर ऐसा होता है कि प्रत्येक उत्पन्न संख्या संख्या अद्वितीय होनी चाहिए। एक अच्छा उदाहरण लॉटरी नंबर उठा रहा है। किसी श्रेणी से यादृच्छिक रूप से उठाया गया प्रत्येक नंबर (जैसे, 1 से 40) अद्वितीय होना चाहिए, अन्यथा, लॉटरी ड्रॉ अमान्य होगा।
अद्वितीय यादृच्छिक संख्याओं को चुनने का सबसे आसान तरीका है कि संख्याओं की श्रेणी को एक ArrayList नामक संग्रह में रखा जाए। यदि आप पहले एक ArrayList में नहीं आए हैं, तो यह उन तत्वों के एक सेट को संग्रहीत करने का एक तरीका है, जिनके पास एक निश्चित संख्या नहीं है। तत्व ऐसी वस्तुएं हैं जिन्हें सूची से जोड़ा या हटाया जा सकता है। उदाहरण के लिए, चलो लॉटरी नंबर पिकर बनाते हैं। इसे 1 से 40 की सीमा तक अद्वितीय संख्याएँ चुनने की आवश्यकता है।
एक उपयोगिता वर्ग जिसे कलेक्शंस कहा जाता है, विभिन्न क्रियाओं को प्रस्तुत करता है जिन्हें संग्रह जैसे पर किया जा सकता है ArrayList (जैसे, तत्वों को खोजें, अधिकतम या न्यूनतम तत्व खोजें, तत्वों के क्रम को उल्टा करें, और जल्द ही)। क्रियाओं में से एक यह तत्वों को फेरबदल करना है। फेरबदल सूची में प्रत्येक तत्व को अलग स्थिति में ले जाएगा। यह एक यादृच्छिक वस्तु का उपयोग करके ऐसा करता है। इसका मतलब यह एक निर्धारक यादृच्छिकता है, लेकिन यह ज्यादातर स्थितियों में करेगा।
यूनिक रैंडम नंबरों को लेने के लिए बस () विधि का उपयोग करके एक-एक करके ArrayList तत्वों को पढ़ें। यह एरियर में तत्व की स्थिति को एक पैरामीटर के रूप में लेता है। उदाहरण के लिए, यदि लॉटरी प्रोग्राम को 1 से 40 की सीमा से छह नंबर लेने की आवश्यकता है: