java - How to get the right input for the String variable using scanner class? -
इस सवाल का पहले से ही एक उत्तर है: < / p>
- 12 जवाब
मैं जावा और मैं सीख रहा हूँ एक इनपुट प्रोग्राम की कोशिश कर रहा था जब मैंने एक पूर्णांक और स्ट्रिंग क्लाइंट को आवृत्ति का प्रयोग करने की कोशिश की, तो एक त्रुटि है जिसके द्वारा मैं इनपुट स्ट्रिंग नहीं कर सकता। जब मैं इनपुट स्ट्रिंग पहले और int के बाद, यह ठीक काम करता है जब मैं स्कैनर वर्ग में एक अलग ऑब्जेक्ट का उपयोग करता हूं तो यह ठीक काम करता है। लेकिन इस पद्धति में समस्या क्या है जब मैं इनपुट को पहली और स्ट्रिंग को स्कैनर क्लास के समान आवृत्ति का उपयोग करने की कोशिश करता / करती हूं?
import java.util.Scanner; सार्वजनिक कक्षा कार्यक्रम {सार्वजनिक स्थिर शून्य मुख्य (स्ट्रिंग [] आर्ग्स) {स्कैनर इनपुट = नया स्कैनर (System.in); // स्कैनर इनपुट 2 = नया स्कैनर (System.in); System.out.println ("अपना नंबर दर्ज करें:"); Int ip = input.nextInt (); System.out.println ("आपका नंबर है:" + ip); System.out.println ("अपना नाम दर्ज करें:"); स्ट्रिंग का नाम = input.nextLine (); System.out.println ("आपका अगला है:" + नाम); }}
nextInt () के लिए प्रतीक्षा नहीं करता है रेखा के अंत - यह टोकन के अंत के लिए प्रतीक्षा करता है, जो कि किसी भी सफेद स्थान को डिफ़ॉल्ट रूप से है उदाहरण के लिए, यदि आप अपने वर्तमान कोड के साथ पहली पंक्ति पर "27 जॉन" टाइप करते हैं, तो आपको
ip और
Jon के लिए
नाम ।
यदि आप उपभोक्ता को पूरी तरह से पूरा करना चाहते हैं, तो आप नंबर इनपुट के लिए
input.nextLine () कॉल करने से सर्वश्रेष्ठ हो सकते हैं, और फिर लाइन को पार्स करने के लिए
Integer.parseInt का उपयोग करें। किसी और चीज के अलावा, जो आप वास्तव में करना चाहते हैं - पाठ की दो लाइन दर्ज करें, और एक संख्या के रूप में पहले पार्स करें।
व्यक्तिगत रूप से मैं एक बड़ा प्रशंसक नहीं हूं का
स्कैनर - इसके पास बहुत सारे पास हैं जैसे यह। मुझे यकीन है कि यह ठीक है जब डिजाइनरों का उद्देश्य बिल्कुल उसी तरह इस्तेमाल किया जा रहा है, लेकिन यह हमेशा यह बताए आसान नहीं है कि वह क्या है।
Comments
Post a Comment