Codegym यूनिवर्सिटी कोर्स के भाग के रूप में एक परामर्शदाता के साथ एक व्याख्यान स्निपेट। पूर्ण पाठ्यक्रम के लिए साइन अप करें।


"अमिगो, तुम्हारा समय आ गया है। अब मैं तुम्हें कीबोर्ड इनपुट के बारे में बताने जा रहा हूँ।"

"हमने स्क्रीन पर डेटा प्रदर्शित करने के लिए System.out का उपयोग किया है। इनपुट प्राप्त करने के लिए, हम System.in का उपयोग करेंगे ।"

"आसान लगता है।"

"लेकिन System.in में एक कमी है - यह केवल हमें कीबोर्ड से वर्ण कोड पढ़ने देता है। इस समस्या को हल करने और डेटा के बड़े हिस्से को एक बार में पढ़ने के लिए, हम एक अधिक जटिल निर्माण का उपयोग करेंगे:"

उदाहरण 1
कीबोर्ड से एक स्ट्रिंग और नंबर इनपुट करें
InputStream inputStream = System.in;
Reader inputStreamReader = new InputStreamReader(inputStream);
BufferedReader bufferedReader = new BufferedReader(inputStreamReader);

String name = bufferedReader.readLine(); //Read a string from the keyboard
String sAge = bufferedReader.readLine(); //Read a string from the keyboard
int nAge = Integer.parseInt(sAge); //Convert the string to a number.
उदाहरण 2
पिछले उदाहरण का अधिक कॉम्पैक्ट संस्करण:
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));

String name = reader.readLine();
String sAge = reader.readLine();
int nAge = Integer.parseInt(sAge);
उदाहरण 3
और भी संक्षिप्त
Scanner scanner = new Scanner(System.in);
String name = scanner.nextLine();
int age = scanner.nextInt();

"कोई प्रश्न?"

"उह ... मुझे कुछ समझ नहीं आया।"

"कुंजीपटल से एक स्ट्रिंग को पढ़ने के लिए, BufferedReader ऑब्जेक्ट का उपयोग करना सबसे सुविधाजनक है। लेकिन ऐसा करने के लिए आपको उस ऑब्जेक्ट को पास करना होगा जिससे आप डेटा पढ़ने जा रहे हैं। इस मामले में, System.in ।"

"लेकिन System.in और BufferedReader असंगत हैं, इसलिए हम दूसरे एडेप्टर का उपयोग करते हैं - एक अन्य InputStreamReader ऑब्जेक्ट।"

"मुझे लगता है कि अब मैं समझ गया। यह स्कैनर वर्ग क्या है ?"

"स्कैनर सुविधाजनक हो सकता है, लेकिन यह बहुत उपयोगी नहीं है। बात यह है, जैसे-जैसे आप आगे बढ़ते हैं (अध्ययन और काम दोनों में), आप अक्सर BufferedReader और InputStreamReader का उपयोग करेंगे , लेकिन स्कैनर - बहुत ही कम। यह हमारे उदाहरण में सुविधाजनक है, लेकिन इसमें भविष्य में यह बहुत उपयोगी नहीं होगा। इसलिए हम इसका अधिक उपयोग नहीं करेंगे ।"

"यह स्पष्ट लगता है, लेकिन मुझे यकीन नहीं है कि मैं सब कुछ समझ गया हूं।"