අද අපි කතා කරන්න යන්නේ buffered reader එක මගින් java වැඩසටහනකට user inputs ලබා ගන්න විදිය ගැන.අපි පහත code එක මගින් මෙය තේරුම් ගනිමු.
import
java.io.BufferedReader;
import
java.io.InputStreamReader;
public class
BufferedReaderDemo {
public static
void main(String[] args) throws Exception {
InputStreamReader
isr=new InputStreamReader(System.in);
BufferedReader
br=new BufferedReader(isr);
System.out.println("enter
your name");
String
name = br.readLine();
System.out.println("enter
your age ");
int
age = Integer.parseInt(br.readLine());
System.out.println("enter
your height ");
double
height = Double.parseDouble(br.readLine());
System.out.println("Your
name is "+name + " You are
"+age+ " years old "+ "and " + "Your height is "+ height);
}
ඉහත code එකේ මුලින්ම කරලා තියෙන්නේ io package
එකේ තියන BufferedReader හා InputStreamReader කියන classes දෙක import කිරීම. මෙලෙස import කිරීම මගින් එම class දෙක තුල ඇති methods අපේ code එක තුලදී අපිට භාවිතා කරන්න පුලුවන්. ඉහත classes දෙක වෙන වෙනම import නොකර කෙලින්ම import java.io.*;ලෙස මුලු io package එකම import කරන්නත් පුලුවන්. එවිට io package එකේ ඇති සියලුම classes අපේ code එක තුලට import වෙනවා.
ඉන්පසු main method එක අවසානයේදී throws Exception ලෙස දක්වා ඇත්තේ මොකක්ද කියන එක ඔබට ගැටලුවක් වෙන්න පුලුවන්. අපි එහිදී සිදු කරලා තියෙන්නේ user
inputs ලබා දීමේදී සිදු විය හැකි exceptions
handle කිරීම. මෙය try
,catch භාවිතයෙන් උනත් සිදු කරන්න පුලුවන්. Exception
Handle කිරීම ගැන අපි ඉදිරියේදී කතා කරමු. දැනට ඒක ගැන වැඩිපුර නොහිතා Bufferde Reader එක භාවිතා කරන විට Exception
handle කරන්න ඕන කියල විතරක් මතක තියා ගන්න.
හරි දැන් ඔබට ගැටලුවක් ඇති මෙන්න මේ කොටසින් කරන්නේ මොකක්ද කියලා.
InputStreamReader isr=newInputStreamReader(System.in);
BufferedReader
br=new BufferedReader(isr);
ඇත්තටම මෙහිදී මුලින්ම සිදු කරලා තියෙන්නේ අපි import කරපු InputStreamReader class එක භාවිතා කරලා isr කියල object එකක් සාදා ගැනීම. එම object එක සැදීමේදී System.in කියලා parameter එකකුත් pass කරන්න ඕන.
ඉන් පසුව BufferedReader br=new BufferedReader(isr); කියන එකෙන් කරන්නෙ අපි import කර ගත් BufferedReader class එක භාවිතා කරලා br කියල object එකක් සාදා ගැනීම. මෙහිදී අපි ඉහත සාදා ගත් isr
object එක මෙම br object එකට parameter එකක් ලෙස pass කරනවා.
ඉහතදී පේලි දෙකකින් ලියා ඇති code එක පහත පරිදි තනි පේලියකින් උනත් ලියන්න පුලුවන්.
BufferedReader
br=new BufferedReader(new InputStreamReader(System.in));
මෙම object සෑදීම පිලිබදව ඔබට එතරම් වැටහෙන්නේ නැත්නම් අපි object oriented කොටස ගැන ඉදිරි පඩම් වලදි කතා කරන විට එය ඔබට
හොදින් වැටහේවි.
එතකම් BufferedReader එක භාවිතා කිරීමට main method එකතුල
එතකම් BufferedReader එක භාවිතා කිරීමට main method එකතුල
InputStreamReader isr=new InputStreamReader(System.in);
BufferedReader
br=new BufferedReader(isr);
ලෙස දැක්විය යුතු බව මතක තබා ගන්න.
හරි දැන් අපි බලමු සාදා ගත් BufferedReader object
එක භාවිතයෙන් කොහොමද user inputs කියවන්නෙ කියලා. BufferedReader එක භාවිතා කරලා user inputs ගනිද්දි අපිට එම input එක ගන්න පුලුවන් String එකක් විදියට විතරයි.
අපිට numeric value එකක් user input එකක් විදියට ගන්න ඕනි නම් අපි එය String එකක් විදියට අරගෙන අදාල numeric value එකට convert කල යුතුයි.
BufferedReader එකෙන් String එකක් input එක විදියට ගන්නව නම් මෙන්න මෙහෙම තමා ඒක කරන්න ඕන.
String name = br.readLine();
මෙහිදී br object එක සහ BuffereedReader class එකේ තියන readline metnod එක භාවිතා කොට ගෙන අදාල String එක name කියලා String
variable එකකට assign කරනවා.
BufferedReader එකෙන් Integer එකක් input එක විදියට ගන්නව නම් මෙන්න මෙහෙම තමා ඒක කරන්න ඕන.
int age =
Integer.parseInt(br.readLine());
මෙහිදී සිදු වන්නේ Integer class එකේ ඇති parseInt method එකට parameter එකක් ලෙස BufferedReader එකෙන් ලබා ගන්නා input එක ලබා දී එය Integer එකකට convert කිරීමයි. .
BufferedReader එකෙන් Double එකක් input එක විදියට ගන්නව නම් මෙන්න මෙහෙම තමා ඒක කරන්න ඕන.
double
height = Double.parseDouble(br.readLine());
මෙහිදී සිදු වන්නේ Double class එකේ ඇති parseDouble method එකට parameter එකක් ලෙස BufferedReader එකෙන් ලබා ගන්නා input එක ලබා දී එය Double එකකට convert කිරීමයි. .
ඉහත එකේ අනිත කොටස් ඔබට තෙරුම් ගන්න පුලුවන් සරල දෙවල්
ටිකක් තමා තියෙන්නේ. තේරෙන්නේ නැති තැනක් තියනව නම් අපිට කියන්න.හොදම දේ තමා BufferedReader එක යොදා ගෙන තවත් ලියන්න.එහෙනම් අදට
නවතිනවා.තවත් පාඩමකින් අපි ලගදීම හමුවෙමු.
By Hasitha Thamaranga
No comments:
Post a Comment