కోడ్జిమ్ విశ్వవిద్యాలయం కోర్సులో భాగంగా మెంటర్తో ఉపన్యాస స్నిప్పెట్. పూర్తి కోర్సు కోసం సైన్ అప్ చేయండి.
"అమిగో, మీ సమయం వచ్చింది. నేను ఇప్పుడు మీకు కీబోర్డ్ ఇన్పుట్ గురించి చెప్పబోతున్నాను."
"మేము స్క్రీన్పై డేటాను ప్రదర్శించడానికి System.outని ఉపయోగించాము . ఇన్పుట్ని స్వీకరించడానికి, మేము System.inని ఉపయోగిస్తాము ."
"సులభంగా ఉంది."
"కానీ System.in లో ఒక లోపం ఉంది - ఇది కీబోర్డ్ నుండి అక్షర కోడ్లను చదవడానికి మాత్రమే అనుమతిస్తుంది. ఈ సమస్యను అధిగమించడానికి మరియు ఒకేసారి పెద్ద మొత్తంలో డేటాను చదవడానికి, మేము మరింత సంక్లిష్టమైన నిర్మాణాన్ని ఉపయోగిస్తాము:"
కీబోర్డ్ నుండి స్ట్రింగ్ మరియు సంఖ్యను ఇన్పుట్ చేయండి
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.
మునుపటి ఉదాహరణ యొక్క మరింత కాంపాక్ట్ వెర్షన్:
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String name = reader.readLine();
String sAge = reader.readLine();
int nAge = Integer.parseInt(sAge);
మరింత కాంపాక్ట్
Scanner scanner = new Scanner(System.in);
String name = scanner.nextLine();
int age = scanner.nextInt();
"ఏవైనా ప్రశ్నలు వున్నాయ?"
"ఊ...నాకేమీ అర్థం కాలేదు."
"కీబోర్డ్ నుండి స్ట్రింగ్ను చదవడానికి, బఫర్డ్ రీడర్ ఆబ్జెక్ట్ను ఉపయోగించడం చాలా సౌకర్యవంతంగా ఉంటుంది. కానీ అలా చేయడానికి మీరు డేటాను చదవాలనుకుంటున్న ఆబ్జెక్ట్లో పాస్ చేయాలి. ఈ సందర్భంలో, System.in ."
"కానీ System.in మరియు BufferedReader అనుకూలంగా లేవు, కాబట్టి మేము మరొక అడాప్టర్ని ఉపయోగిస్తాము - మరొక InputStreamReader ఆబ్జెక్ట్."
"నేను ఇప్పుడు అర్థం చేసుకున్నాను. ఈ స్కానర్ క్లాస్ అంటే ఏమిటి ?"
"స్కానర్ సౌకర్యవంతంగా ఉంటుంది, కానీ ఇది చాలా ఉపయోగకరంగా లేదు. విషయం ఏమిటంటే, మీరు (అధ్యయనం చేయడం మరియు పని చేయడం రెండింటిలోనూ), మీరు బఫర్డ్ రీడర్ మరియు ఇన్పుట్స్ట్రీమ్రీడర్ని తరచుగా ఉపయోగిస్తారు , కానీ స్కానర్ - చాలా అరుదుగా. ఇది మా ఉదాహరణలో సౌకర్యవంతంగా ఉంటుంది, కానీ భవిష్యత్తులో ఇది చాలా తరచుగా ఉపయోగపడదు. కాబట్టి మేము దానిని ఎక్కువగా ఉపయోగించము ."
"అది స్పష్టంగా కనిపిస్తోంది, కానీ నేను ప్రతిదీ అర్థం చేసుకున్నానని నాకు ఖచ్చితంగా తెలియదు."