في Java ، يمكننا استخدام فئة java.util.random لإنشاء رقم عشوائي لحدوثه. لديها اثنين من مُنشئين ، وهما عشوائيين () وعشوائي (بذرة طويلة). يستخدم Random () الوقت الحالي ، System.CurrentTimeMillis () ، كبذور المولد ، في حين أن البذور العشوائية (البذور الطويلة) تستخدم البذور المحددة كبذور المولد.
عندما يكون مولد الأرقام العشوائية كائنًا عشوائيًا ، يمكن استدعاء طرق مختلفة بواسطة الكائن: NextInt () ، NextLong () ، NextFloat () ، NextDouble () ، إلخ للحصول على أنواع مختلفة من الأرقام العشوائية. إذا استخدم كائنان عشوائيان نفس البذور (على سبيل المثال ، كلاهما 100) واتصل نفس الوظيفة بنفس الترتيب ، فإن قيم الإرجاع الخاصة بهم متشابهة تمامًا.
من غير المجدي التحدث كثيرًا ، اسمحوا لي أن أقدم لكم الكستناء أولاً ، على النحو التالي:
ولكن ماذا علي أن أفعل إذا أردت رقمًا في نطاق معين؟ على سبيل المثال ، أريد إنشاء أرقام عشوائية بشكل عشوائي بين 0 و 99 ، وفي هذا الوقت يمكننا استخدام مشغل Modulo ٪.
الغرض من استخدام مشغل المعامل ٪ على الرقم العشوائي الذي تم إنشاؤه بواسطة مولد الأرقام العشوائية هو جعل القيمة القصوى للرقم العشوائي ضمن نطاق ناقص القيمة المعامل التي نقوم بتعيينها. انظر إلى الكود التالي والتحكم في المدخلات إلى نطاق 0 ~ 99. (تذكير ودود: إذا لم تتم إضافة Math.ABS () ، فسيكون نطاق الإخراج -99 ~ 99.)
انظر أولاً إلى الموقف الذي تتم إضافة Math.ABS () ، على النحو التالي
بالنظر إلى الموقف المضافة ، على النحو التالي: