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

जावा उपयोगकर्ता इनपुट में महारत हासिल करना:स्कैनर क्लास के लिए एक व्यापक गाइड

<पी> स्कैनर क्लास का उपयोग जावा उपयोगकर्ता इनपुट को पढ़ने के लिए किया जाता है। जावा स्कैनर java.util पैकेज में बनाया गया है, इसलिए इसका उपयोग करने के लिए किसी बाहरी लाइब्रेरी की आवश्यकता नहीं है। स्कैनर मानक इनपुट से पाठ पढ़ता है। यह पाठ मुख्य प्रोग्राम में लौटा दिया जाता है ताकि इसे संग्रहीत किया जा सके या अन्यथा हेरफेर किया जा सके। <पी> जावा में उपयोगकर्ता इनपुट कैसे प्राप्त करें यह समझना एक महत्वपूर्ण कौशल है। उदाहरण के लिए, मान लें कि आप साइन-इन फ़ॉर्म के साथ एक ऐप बना रहे हैं। आपको उपयोगकर्ता के लिए लॉगिन क्रेडेंशियल एकत्र करने के लिए उपयोगकर्ता इनपुट को संभालने की आवश्यकता होगी।

<पी> जावा में, आप स्कैनर का उपयोग कर सकते हैं उपयोगकर्ता इनपुट प्राप्त करने के लिए क्लास जिसे आप अपने प्रोग्राम में संसाधित कर सकते हैं। यह ट्यूटोरियल कुछ उदाहरणों का उपयोग करके चर्चा करेगा कि उपयोगकर्ता इनपुट प्राप्त करने के लिए जावा स्कैनर क्लास का उपयोग कैसे करें।

<पी> जावा स्कैनर क्लास का उपयोग उपयोगकर्ता इनपुट एकत्र करने के लिए किया जाता है। स्कैनर java.util पैकेज का हिस्सा है, इसलिए इसे किसी बाहरी लाइब्रेरी को डाउनलोड किए बिना आयात किया जा सकता है। स्कैनर मानक इनपुट से टेक्स्ट पढ़ता है और उसे प्रोग्राम में लौटा देता है।

<पी> स्कैनर क्लास के साथ काम करने के लिए, आपको पहले इसे अपने कोड में आयात करना होगा। आप इसे दो तरीकों से कर सकते हैं:

  1. यदि आपको केवल java.util.Scanner के साथ काम करने की आवश्यकता है क्लास, आप स्कैनर क्लास को सीधे आयात कर सकते हैं।
  2. यदि आप java.util में अन्य मॉड्यूल के साथ काम कर रहे हैं लाइब्रेरी, आप पूरी लाइब्रेरी आयात करना चाह सकते हैं।
<पी> उपरोक्त प्रत्येक विधि के लिए कोड निम्नलिखित है:

import java.util.Scanner;
import java.util.*;
<पी> कोड की पहली पंक्ति स्कैनर वर्ग को आयात करती है। कोड की दूसरी पंक्ति स्कैनर सहित java.util लाइब्रेरी के सभी पैकेजों को आयात करती है।

<पी> यह ध्यान देने योग्य है कि जावा में उपयोगकर्ता इनपुट डेटा प्राप्त करने के अन्य तरीके भी हैं। आप जावा के बफ़रेडरीडर, इनपुटस्ट्रीमरीडर, डेटाइनपुटस्ट्रीम और कंसोल क्लास का उपयोग कर सकते हैं।

<पी> हालाँकि, स्कैनर क्लास जावा में उपयोगकर्ता इनपुट एकत्र करने का सबसे लोकप्रिय तरीका है। इसलिए, हम इस लेख में उस वर्ग पर ध्यान केंद्रित करेंगे।

जावा उपयोगकर्ता इनपुट सिंटैक्स

<पी> आप स्कैनर क्लास का उपयोग करके उपयोगकर्ता इनपुट एकत्र कर सकते हैं। स्कैनर क्लास उस टेक्स्ट को पढ़ता है जिसे उपयोगकर्ता कंसोल में डालता है और उस टेक्स्ट को प्रोग्राम में वापस भेजता है। स्कैनर जावा उपयोगकर्ता इनपुट एकत्र करने की प्राथमिक विधि है।

<पी> जावा स्कैनर क्लास को आयात करने के बाद, आप उपयोगकर्ता इनपुट एकत्र करने के लिए इसका उपयोग करना शुरू कर सकते हैं। यहां जावा स्कैनर क्लास के लिए सिंटैक्स दिया गया है:

Scanner input = new Scanner(System.in);
int number = input.nextInt();
<पी> इस उदाहरण में, हमने input नामक एक वेरिएबल बनाया है जो उपयोगकर्ता द्वारा कंसोल में इनपुट किए गए अगले मान को एकत्रित करता है। फिर हमने number नामक एक वेरिएबल बनाया जो उपयोगकर्ता द्वारा कंसोल पर सबमिट किया गया मान एकत्र करता है।

जावा उपयोगकर्ता इनपुट उदाहरण

<पी> उदाहरण के लिए, मान लीजिए कि हम एक स्थानीय कंप्यूटर स्टोर के लिए एक एप्लिकेशन बना रहे हैं जो उनकी इन्वेंट्री पर नज़र रखता है।

<पी> प्रबंधक ने हमसे एक सरल प्रोग्राम बनाने के लिए कहा जिसका उपयोग वह दुकान की इन्वेंट्री सूची में आइटम जोड़ने के लिए कर सकती है। प्रबंधक दो मान इनपुट करने में सक्षम होना चाहता है:आइटम का नाम और उसकी मात्रा।

<पी> यहां वह कोड है जिसका उपयोग हम इस प्रोग्राम को बनाने के लिए करेंगे:

import java.util.Scanner;
class Main {
 public static void main(String[] args) {
 Scanner input = new Scanner(System.in);
 System.out.print("Product name: ");
 String product_name = input.next();
 System.out.print("Value entered: " + product_name);
 System.out.print("Quantity: ");
 int quantity = input.nextInt();
 System.out.print("Value entered: " + quantity);
 }
}
<पी> पहला इनपुट हम आइटम का नाम स्वीकार करते हैं। यह एक स्ट्रिंग होगी क्योंकि आइटम नाम टेक्स्ट-आधारित हैं और विभिन्न प्रकार के वर्णों का उपयोग करते हैं। नीचे दिए गए कोड में, हम इस स्ट्रिंग को कोड के साथ परिभाषित करते हैं:स्ट्रिंग product_name .

<पी> अगला इनपुट वस्तु की मात्रा है। यह एक संख्या होगी. नीचे दिए गए कोड में, हम इस संख्या को कोड के साथ परिभाषित करते हैं:int amount , जहां int पूर्णांक के लिए खड़ा है।

<पी> जब हम अपना कोड चलाते हैं और कुछ उदाहरण मान सम्मिलित करते हैं, तो प्रोग्राम निम्नलिखित प्रतिक्रिया देता है:

<पी> Product name: 15-inch MacBook Pro 2019 <पी> Value entered: 15-inch MacBook Pro 2019 <पी> Quantity: 7 <पी> Value entered: 7 <पी> जैसा कि आप देख सकते हैं, हमारे प्रोग्राम ने उपयोगकर्ता का इनपुट एकत्र किया। इसके बाद यह उपयोगकर्ता द्वारा दर्ज किया गया मान कंसोल पर वापस आ गया। यह हमें यह सत्यापित करने की अनुमति देता है कि हमारा प्रोग्राम काम कर रहा है।

हमारा स्कैनर जावा प्रोग्राम कैसे काम करता है

<पी> आइए अपने कोड को चरण-दर-चरण विघटित करें।

  1. हम स्कैनर लाइब्रेरी को अपने कोड में आयात करते हैं ताकि हम उपयोगकर्ता इनपुट प्राप्त कर सकें।
  2. हम मेन नामक एक क्लास घोषित करते हैं जो हमारे प्रोग्राम के लिए कोड संग्रहीत करता है।
  3. हम स्कैनर इनपुट =नया स्कैनर(System.in); का उपयोग करके स्कैनर क्लास को आरंभ करते हैं इनपुट जावा वेरिएबल हमारे आरंभिक स्कैनर को संग्रहीत करता है।
  4. हम कंसोल पर "उत्पाद का नाम:" प्रिंट करते हैं और उपयोगकर्ता को input.next(); का उपयोग करके उत्पाद का नाम सबमिट करने के लिए कहते हैं। .
  5. हम उपयोगकर्ता द्वारा सबमिट किए गए उत्पाद नाम को कंसोल पर प्रिंट करते हैं।
  6. हम मात्रा: प्रिंट करते हैं कंसोल पर और उपयोगकर्ता को input.nextInt(); का उपयोग करके स्टॉक में उत्पाद की मात्रा सबमिट करने के लिए संकेत दें .
  7. हम मात्रा का मान प्रिंट करते हैं कंसोल के लिए परिवर्तनशील.
<पी> ध्यान दें कि हमने संख्याओं और स्ट्रिंग्स को एकत्रित करने के लिए अलग-अलग कोड का उपयोग किया है। जब हमने उत्पाद का नाम एकत्र किया, तो हमने input.next(); का उपयोग किया , और जब हमने उत्पाद की मात्रा एकत्र की, तो हमने input.nextInt(); का उपयोग किया .

जावा स्कैनर:इनपुट प्रकार

<पी> हमारे उपरोक्त उदाहरण में, हमने उपयोगकर्ता से दो प्रकार का डेटा एकत्र किया:एक स्ट्रिंग और एक पूर्णांक। जैसा कि उल्लेख किया गया है, हमें इस प्रकार के डेटा को इकट्ठा करने के लिए अलग-अलग कोड का उपयोग करना होगा।

<पी> विभिन्न प्रकार के डेटा, जैसे स्ट्रिंग्स और पूर्णांक, अलग-अलग तरीकों का उपयोग करके एकत्र किए जाते हैं। इसलिए, एक बूलियन इकट्ठा करने के लिए, आप फ़्लोट इकट्ठा करने की तुलना में भिन्न कोड का उपयोग करेंगे।

<पी> जावा उपयोगकर्ता इनपुट में महारत हासिल करना:स्कैनर क्लास के लिए एक व्यापक गाइड

<पी> "कैरियर कर्म ने मेरे जीवन में तब प्रवेश किया जब मुझे इसकी सबसे अधिक आवश्यकता थी और बूटकैंप ने तुरंत मेरी मदद की। स्नातक होने के दो महीने बाद, मुझे अपना सपनों का काम मिला जो जीवन में मेरे मूल्यों और लक्ष्यों के अनुरूप था!"

<पी> वीनस, रॉकबॉट में सॉफ्टवेयर इंजीनियर

<पी> अपना बूटकैंप मैच ढूंढें

<पी> यहां एक तालिका है जो स्कैनर क्लास का उपयोग करके जावा में उपयोगकर्ता इनपुट एकत्र करने के लिए उपयोग की जाने वाली सभी विधियों को दिखाती है:

तरीका विधि द्वारा एकत्रित मूल्य का प्रकार नेक्स्टबूलियन()बूलियननेक्स्टबाइट()बायटेनेक्स्टडबल()डबलनेक्स्टफ्लोट()फ्लोटनेक्स्टइंट()इंटनेक्स्टलाइन()स्ट्रिंगनेक्स्टलॉन्ग()लॉन्गनेक्स्टशॉर्ट()शॉर्ट <पी> यदि आप गलत इनपुट प्रकार डालते हैं, तो आपका प्रोग्राम एक InputMismatchException बढ़ा देगा। उदाहरण के लिए, यदि आप बूलियन्स एकत्र करने वाले फ़ील्ड में डबल डालने का प्रयास करते हैं, तो आपका प्रोग्राम एक अपवाद उठाएगा। 

बूलियन मान एकत्रित करना

<पी> चलिए कंप्यूटर स्टोर पर वापस चलते हैं। मान लीजिए कि हम अपना पहला प्रोग्राम अपडेट करना चाहते हैं और अपने कंप्यूटर स्टोर मैनेजर को यह इनपुट करने की अनुमति देना चाहते हैं कि उत्पाद प्रदर्शन पर है या स्टॉकरूम में रखा गया है।

<पी> ऐसा करने के लिए, हम on_display नामक एक नया मान एकत्र करना चाहते हैं यह इनपुट को बूलियन के रूप में संग्रहीत करेगा क्योंकि इसमें केवल दो मान हो सकते हैं:सत्य या गलत।

<पी> यहां वह कोड है जिसका उपयोग हम इस डेटा को एकत्र करने के लिए कर सकते हैं:

import java.util.Scanner;
class Main {
 public static void main(String[] args) {
 Scanner input = new Scanner(System.in);
 System.out.print("Product name: ");
 String product_name = input.next();
 System.out.print("Value entered: " + product_name);
 System.out.print("Quantity: ");
 int quantity = input.nextInt();
 System.out.print("Value entered: " + quantity);
System.out.print("On display: ");
 boolean on_display = input.nextBoolean();
 System.out.print("Value entered: " + on_display);
 }
}
<पी> जब हम अपना कोड चलाते हैं और कुछ उदाहरण मान सम्मिलित करते हैं, तो प्रोग्राम निम्नलिखित प्रतिक्रिया देता है:

<पी> Product name: 15-inch MacBook Pro 2019 <पी> Value entered: 15-inch MacBook Pro 2019 <पी> Quantity: 7 <पी> Value entered: 7 <पी> On display: true <पी> Value entered: true <पी> हमारा प्रोग्राम ऊपर दिए गए उदाहरण की तरह ही काम करता है। हालाँकि, इस बार हम उपयोगकर्ता से एक अतिरिक्त मूल्य एकत्र करते हैं:क्या उनके द्वारा प्रोग्राम में डाला गया उत्पाद प्रदर्शन पर है। हम nextBoolean() का उपयोग करते हैं उपयोगकर्ता से यह मान एकत्र करने की विधि। फिर हम उस मान को कंसोल पर प्रिंट करते हैं।

निष्कर्ष

<पी> आप किसी उपयोगकर्ता से इनपुट एकत्र करने के लिए जावा के स्कैनर क्लास का उपयोग कर सकते हैं। स्कैनर वर्ग उपयोगकर्ताओं से विभिन्न प्रकार के डेटा एकत्र करने में सक्षम है, जिसमें लघु मान, स्ट्रिंग्स, बूलियन और अन्य शामिल हैं।

<पी> इस ट्यूटोरियल में, कुछ उदाहरणों का उपयोग करके, हमने पता लगाया कि उपयोगकर्ता इनपुट एकत्र करने के लिए जावा स्कैनर क्लास का उपयोग कैसे करें। इसके अलावा, हमने स्कैनर वर्ग द्वारा पेश किए गए विभिन्न डेटा प्रकारों पर चर्चा की जिनका उपयोग हम उपयोगकर्ता इनपुट एकत्र करने के लिए कर सकते हैं।

<पी> जावा में कोडिंग के बारे में अधिक जानने के लिए, हमारी जावा में कोड कैसे करें मार्गदर्शिका पढ़ें।


  1. विस्तारित इकाई-संबंध (ईई-आर) मॉडल विस्तारित इकाई-संबंध (ईई-आर) मॉडल

    EER एक उच्च-स्तरीय डेटा मॉडल है जो मूल ER मॉडल के एक्सटेंशन को शामिल करता है। उन्नत ईआरडी उच्च स्तरीय मॉडल हैं जो जटिल डेटाबेस की आवश्यकताओं और जटिलताओं का प्रतिनिधित्व करते हैं। ER मॉडल अवधारणाओं के अलावा EE-R में शामिल हैं - उपवर्ग और सुपर क्लास। विशेषज्ञता और सामान्यीकरण। श्रेणी या संघ प्रकार। ए

  1. Matplotlib में बार चार्ट के ऊपर प्रतिशत कैसे प्रदर्शित करें? Matplotlib में बार चार्ट के ऊपर प्रतिशत कैसे प्रदर्शित करें?

    Matplotlib में बार चार्ट के ऊपर प्रतिशत प्रदर्शित करने के लिए, हम निम्नलिखित कदम उठा सकते हैं - आकृति का आकार सेट करें और सबप्लॉट के बीच और आसपास पैडिंग समायोजित करें। x और y डेटा बिंदु बनाएं; एक वैरिएबल को इनिशियलाइज़ करें, चौड़ाई । सबप्लॉट () का उपयोग करके एक आकृति और सबप्लॉट का एक सेट बनाएं विधि

  1. एंड्रॉइड LinkedBlockingDeque में removeLast () का उपयोग कैसे करें? एंड्रॉइड LinkedBlockingDeque में removeLast () का उपयोग कैसे करें?

    एक उदाहरण में जाने से पहले, हमें पता होना चाहिए कि LinkedBlockingDeque क्या है। यह संग्रह इंटरफ़ेस और AbstractQueue वर्ग द्वारा कार्यान्वित किया जाता है। यह लिंक्ड नोड्स के आधार पर वैकल्पिक सीमाएँ प्रदान करता है। यह कंस्ट्रक्टर को मेमोरी साइज पास करने वाला है और एंड्रॉइड में मेमोरी अपव्यय प्रदान करन