Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Java

Java रैंडम नंबर: एक शुरुआती गाइड

Java रैंडम नंबर कैसे जनरेट करें

5. 7. 22. हम मनुष्यों के लिए, एक रैंडम नंबर जनरेट करना आसान है। हमें बस खुद से एक नंबर मांगना होता है, और एक हमारे दिमाग में आ जाता है।

काश प्रोग्रामिंग में भी ऐसा ही आसान होता, है ना? Java में, रैंडम नंबर जनरेट करना आसान है, अगर आप जानते हैं कि कैसे।

इस गाइड में, हम तीन दृष्टिकोणों पर चर्चा करने जा रहे हैं जिनका उपयोग आप रैंडम नंबर जनरेट करने के लिए कर सकते हैं। हम एक नंबर गेसिंग गेम के संदर्भ में प्रत्येक मेथड के काम करने के उदाहरणों के माध्यम से जाएंगे।

रैंडम नंबर जनरेट करना

हम सभी ने कभी न कभी उन गेम्स को खेला है जो आपसे एक नंबर गेस करने के लिए कहते हैं। उनमें से कुछ तो सही गेस करने पर पुरस्कार भी देते हैं। इस गाइड के लिए, हम Java में एक नंबर गेसिंग गेम बनाने जा रहे हैं।

पहला कदम, निश्चित रूप से, एक रैंडम नंबर जनरेट करना है। रैंडम नंबर के बिना, हमारा गेम बहुत मजेदार नहीं होगा। आइए उन तीन मेथड्स के माध्यम से चलते हैं जिनका उपयोग हम इसे करने के लिए कर सकते हैं।

Random क्लास का उपयोग करना

Java में "Random" नामक एक आसान क्लास है जिसका उपयोग आप रैंडम नंबर जनरेट करने के लिए कर सकते हैं। हम java.util.Random क्लास का उपयोग करके रैंडम नंबर्स की एक स्ट्रीम जनरेट करके अपना नंबर गेसिंग गेम शुरू करेंगे:

import java.util.Random; class Main { public static void main(String args[]) { Random random_number_generator = new Random(); int random_number = random_number_generator.nextInt(25); System.out.println(random_number); } }

जब हम इस क्लास को तीन बार चलाते हैं, तो तीन रैंडम नंबर जनरेट होते हैं:

22 15 19

हमने क्लास, java.util.Random को इम्पोर्ट करके शुरू किया है। फिर, हमने इस क्लास का एक इंस्टेंस बनाया जिसे "random_number_generator" कहा जाता है। इस इंस्टेंस का उपयोग करके, हम रैंडम नंबर्स जनरेट कर सकते हैं।

nextInt() मेथड हमें 0 और किसी अन्य निर्दिष्ट नंबर की रेंज के बीच एक रैंडम नंबर जनरेट करने की अनुमति देता है। ऊपर, हमने नंबर 25 निर्दिष्ट किया। इसका मतलब है कि हमारा जनरेटर जो भी नंबर लौटाएगा वह 0 और 25 के बीच होगा।

Math.random() का उपयोग करना

Math.random() मेथड का उपयोग करने में थोड़ा अधिक काम लगता है, लेकिन यह अभी भी रैंडम नंबर जनरेट करने का एक अच्छा तरीका है। आइए Math.random() का उपयोग करके एक रैंडम नंबर जनरेटर सीक्वेंस बनाएं:

class Main { public static void main(String args[]) { int small = 0; int large = 25; int random_number = (int)(Math.random() * (large - small + 1) + small); System.out.println(random_number); } }

Math.random() Java में बिल्ट-इन आता है। इसका मतलब है कि हमें इसे अपने कोड में इम्पोर्ट नहीं करना पड़ता।

हमने दो वेरिएबल घोषित करके शुरू किया है। "small" निचली सीमा निर्दिष्ट करता है जिसके नीचे कोई नंबर जनरेट नहीं किया जाना चाहिए; "large" ऊपरी सीमा है जिसके ऊपर कोई नंबर जनरेट नहीं किया जाना चाहिए।

फिर हमने एक रैंडम नंबर जनरेट करने के लिए एक फॉर्मूला का उपयोग किया है। ऐसा इसलिए है क्योंकि Math.random() अपने आप में एक पूरा रैंडम नंबर नहीं लौटाता। Math.random मेथड 0.0 और 1.0 के बीच एक रैंडम नंबर लौटाता है। हमें इसे अपनी रेंज के भीतर एक पूरे नंबर में बदलने के लिए ऊपर दिए गए फॉर्मूला का उपयोग करना होगा।

जब हम अपने कोड को तीन बार चलाते हैं, तो तीन रैंडम नंबर जनरेट होते हैं:

2 1 9

ThreadLocalRandom का उपयोग करना

ThreadLocalRandom एक क्लास है जिसका उपयोग आप रैंडम नंबर्स जनरेट करने के लिए कर सकते हैं।

यह क्लास तब उपयोग करने के लिए सबसे अच्छी है जब आप पैरेलल में कई रैंडम नंबर्स जनरेट करना चाहते हैं। यह आमतौर पर मल्टी-थ्रेडिंग वातावरण में होता है।

आइए इस मेथड का उपयोग करके एक रैंडम नंबर जनरेटर बनाएं:

import java.util.concurrent.ThreadLocalRandom; class Main { public static void main(String args[]) { int small = 0; int large = 25; ThreadLocalRandom random_number_generator = ThreadLocalRandom.current(); int random_number = random_number_generator.nextInt(small, large); System.out.println(random_number); } }

हमने ThreadLocalRandom लाइब्रेरी को इम्पोर्ट करके शुरू किया है जिसमें वह क्लास है जिसका उपयोग हम रैंडम नंबर जनरेट करने के लिए कर रहे हैं। फिर हमने दो वेरिएबल निर्दिष्ट किए हैं जो हमारे रैंडम नंबर जनरेटर के लिए निचली और ऊपरी सीमा निर्धारित करते हैं।

हमने random_number_generator नामक एक वेरिएबल घोषित किया है जो ThreadLocalRandom क्लास को संदर्भित करता है। फिर हमने nextInt() मेथड का उपयोग किया और रैंडम नंबर जनरेट करने के लिए अपने "small" और "large" वेरिएबल्स को आर्ग्युमेंट्स के रूप में निर्दिष्ट किया।

हमारे प्रोग्राम को तीन बार एक्जीक्यूट करने पर तीन रैंडम नंबर लौटते हैं:

4 23 15

अब हम अपने गेसिंग गेम का बाकी हिस्सा बनाना शुरू करने के लिए तैयार हैं।

गेस लॉजिक बनाना

अब हम जानते हैं कि रैंडम नंबर कैसे जनरेट करना है। हमारे गेम को बनाने में अगला कदम वह लॉजिक बनाना है जो यूजर को रैंडम नंबर गेस करने की अनुमति देता है।

आप उपरोक्त किसी भी उदाहरण का उपयोग इस कोड के साथ कर सकते हैं ताकि यह काम करे। हमारे कोड स्निप्पेट्स में वेरिएबल नामों को इस तरह सेट किया गया है कि वे नीचे दिए गए उदाहरण के साथ compatible हों।

आइए "Scanner" क्लास का उपयोग करके यूजर से नंबर गेस करने के लिए कहकर शुरू करें:

import java.util.Scanner; class Main { public static void main(String[] args) { // Guessing code goes here Scanner guess = new Scanner(System.in); System.out.println("Guess a number between 1 and 25: "); int user_guess = guess.nextInt(); } }

यह कोड हमारे यूजर से "Guess a number between 1 and 25: " पूछता है। यूजर जो मान Java कंसोल में दर्ज करेगा उसे "user_guess" वेरिएबल के रूप में स्टोर किया जाएगा।

फिर हम एक if स्टेटमेंट लिखने जा रहे हैं जो जांचता है कि यूजर द्वारा गेस किया गया नंबर हमारे प्रोग्राम द्वारा जनरेट किए गए नंबर के बराबर है या नहीं:

... if (user_guess == random_number) { System.out.println("You have correctly guessed the number!"); } else { System.out.println("Your guess is incorrect!"); }

आइए अपना प्रोग्राम चलाएं और 1 और 25 के बीच एक नंबर टाइप करें:

Guess a number between 1 and 25: 7 Your guess is incorrect!

यदि हम नंबर को सही ढंग से गेस करते हैं, तो हमारे प्रोग्राम द्वारा निम्न लौटाया जाता है:

Guess a number between 1 and 25: 9 You have correctly guessed the number!

कोड की केवल कुछ लाइन्स के साथ, हम एक ऐसा गेम बनाने में सक्षम हुए हैं जो गेस करने के लिए एक रैंडम नंबर जनरेट करता है।

निष्कर्ष

प्रोग्रामिंग में रैंडम नंबर्स के उपयोग की एक विस्तृत श्रृंखला है। इस उदाहरण में, हमने देखा कि रैंडम नंबर का उपयोग गेसिंग गेम के साथ कैसे किया जा सकता है।

रैंडम नंबर्स जनरेट करने के लिए आप तीन मेथड्स का उपयोग कर सकते हैं:

  • Random क्लास का उपयोग करना
  • बिल्ट-इन Math.random() मेथड का उपयोग करना
  • ThreadLocalRandom क्लास का उपयोग करना

क्या आप एक चुनौती ढूंढ रहे हैं? हमारे गेसिंग गेम कोड को बदलें ताकि आप कई गेस कर सकें।

  1. Java Math.random का उपयोग कैसे करें Java Math.random का उपयोग कैसे करें

    Math.random() Java मेथड 0.0 और 1.0 के बीच एक छद्म-यादृच्छिक संख्या उत्पन्न करता है। परिणामी यादृच्छिक संख्या को 0-1 से बाहर की रेंज प्राप्त करने के लिए गुणा किया जा सकता है, और परिणाम 0 हो सकता है लेकिन हमेशा 1 से कम होता है। प्रोग्रामिंग करते समय, अक्सर ऐसी स्थितियां होती हैं जहां आपको एक यादृच्

  1. - Java Substring: एक कैसे करें गाइड

    Java substring() मेथड किसी विशेष स्ट्रिंग का एक भाग लौटाता है। यह मेथड उन वर्णों के प्रारंभ और अंत इंडेक्स मान स्वीकार करता है जिन्हें आप स्ट्रिंग से पुनर्प्राप्त करना चाहते हैं। जिस मूल स्ट्रिंग पर substring() लागू किया जाता है, वह अपरिवर्तित रहती है। आप Java प्रोग्राम में स्ट्रिंग के किसी विशेष भ

  1. Java कंपाइलर: एक चरण-दर-चरण गाइड Java कंपाइलर: एक चरण-दर-चरण गाइड

    पांच से दस साल पहले, Java सीखना अब जितना सुलभ नहीं था। तब, आपको Java Development Kit (JDK) डाउनलोड करना पड़ता था जिसमें आपके मशीन पर चलने के लिए कंपाइलर और इंटरप्रेटर शामिल होते थे। अब हमारे लिए मुफ्त में ऑनलाइन कई Java कंपाइलर उपलब्ध हैं। इस लेख में, हम बात करते हैं कि Java भाषा को कंपाइल करना कैसे