Պատահական համարներ ստեղծելով Java- ում

Պատահական համարներ ստեղծելով Java- ում

Պատահական թվերի շարք ստեղծելը այն ընդհանուր խնդիրներից է, որոնք ժամանակ առ ժամանակ բերք են տալիս: Java- ում դա կարելի է հասնել պարզապես օգտագործելով java.util.Random դասը:

Առաջին քայլը, ինչպես ցանկացած API դասի օգտագործման դեպքում, ներմուծման հայտարարությունը ձեր ծրագրի դասի սկսվելուց առաջ դնելն է.

Հաջորդը ՝ ստեղծեք Պատահական առարկա.

Պատահական օբյեկտը ձեզ տրամադրում է պարզ պատահական թվերի գեներատոր: Օբյակի մեթոդները հնարավորություն են տալիս ընտրելու պատահական թվեր: Օրինակ, nextInt () և nextLong () եղանակները կվերադարձնեն մի շարք, որոնք գտնվում են համապատասխանաբար և երկար տվյալների տեսակների արժեքների սահմաններում (բացասական և դրական) համապատասխանաբար.

Վերադարձված թվերը պատահականորեն կընտրվեն միջ և երկար արժեքներ.

Որոշակի շարքից ընտրեք պատահական թվեր

Սովորաբար ստեղծվելու պատահական թվերը պետք է լինեն որոշակի տիրույթից (օր., Ներառյալ ՝ 1-ից 40-ը ներառյալ): Այս նպատակով, nextInt () մեթոդը կարող է նաև ընդունել int պարամետր: Այն նշում է թվերի շարքի վերին սահմանը: Այնուամենայնիվ, վերին սահմանային համարը ներառված չէ որպես այն թվերից մեկը, որը կարելի է ընտրել: Դա գուցե շփոթեցնող է թվում, բայց հաջորդInt () մեթոդը գործում է զրոյից վերև: Օրինակ:

կընտրի միայն պատահական համարը `ներառյալ 0-ից 39: Ընտրեք մի շարքից, որը սկսվում է 1-ից, պարզապես ավելացրեք 1-ը հաջորդInt () մեթոդի արդյունքին: Օրինակ ՝ 1-ից 40-ի միջև համարը ընտրելը, ներառյալ արդյունքին ավելացնել մեկը.

Եթե ​​միջակայքը սկսվում է մեկից ավելի մեծ թվով, ապա ձեզ հարկավոր է.

  • մինուս մեկնարկի համարը վերին սահմանային թվից և այնուհետև ավելացնել մեկը:
  • Մեկնարկային համարը ավելացրեք հաջորդInt () մեթոդի արդյունքին:

Օրինակ ՝ ներառյալ 5-ից մինչև 35 թիվը ներառյալ, վերին սահմանային թիվը կլինի 35-5 + 1 = 31, իսկ արդյունքին պետք է ավելացվի 5:

Պարզապես պատահական դասը որքանո՞վ է պատահական:

Պետք է նշեմ, որ Պատահական դասը որոշում կայացնում է պատահական թվեր: Ալգորիթմը, որն առաջացնում է պատահականություն, հիմնված է սերմ կոչվող մի շարքի վրա: Եթե ​​սերմերի քանակը հայտնի է, ապա հնարավոր է պարզել այն թվերը, որոնք պատրաստվում են արտադրվել ալգորիթմից: Դա ապացուցելու համար ես կօգտագործեմ համարները այն օրվանից, երբ Նիլ Արմսթրոնգը առաջին անգամ քայլեց Լուսնի վրա, որպես իմ սերնդի համարը (1969 թ. Հուլիսի 20):

Անկախ նրանից, թե ով է վարում այս ծածկագիրը, արտադրված «պատահական» համարների հաջորդականությունը կլինի.

Լռելյայն, սերմերի քանակը, որն օգտագործվում է.

1970-ի հունվարի 1-ից սկսած միլիսեկորսներում ներկայիս ժամանակն է: Սովորաբար դա մեծ թվով նպատակների համար կբերի բավականաչափ պատահական թվեր: Այնուամենայնիվ, նկատի առեք, որ նույն միլիս վայրկյանում ստեղծված երկու պատահական համարի երկու գեներատոր կստեղծի նույն պատահական համարները:

Նաև զգույշ եղեք, երբ օգտագործեք Պատահական դասը ցանկացած կիրառման համար, որը պետք է ունենա անվտանգ պատահական համարների գեներատոր (օրինակ ՝ խաղային ծրագիր): Հնարավոր է գուշակել սերմերի քանակը ՝ հիմք ընդունելով հայտը գործելու ժամանակը: Ընդհանրապես, այն դիմումների համար, երբ պատահական թվերը բացարձակապես կարևոր են, ավելի լավ է գտնել այլընտրանք Random օբյեկտի համար: Դիմումների մեծ մասի համար, որտեղ պարզապես անհրաժեշտ է լինել որոշակի պատահական տարր (օրինակ ՝ տախտակ խաղ տախտակի համար), ապա այն լավ է գործում: