8 වන පාඩම(input read from user)
Data
ටයිප්ස් වල වැලියු user
කෙනෙක්ගෙන් read කරන්න තමයි දැන් ලෑස්තිවෙන්නෙ.
ඊට කලින්
data ටයිප් එකක් තියනව
දැනගන්න.ඒ තමයි Boolean ගැන.මේව
define කරන්නෙ මෙහෙම.
boolean
b=true;
boolean
c=false;
මේ බූලියන්
ටයිප් එකේ තියෙන්නෙ වැලියු 2යි.එක්කො true,නැත්නම්
false.
හරි දැන්
lesson එකට යමු.
මෙතනදි
කරන්නෙ userගෙන් වැලියු
read කරනෙක.මන් කලින් කිව්ව වගේ මේකටත් package එකක් ඉම්පොර්ට් කරගන්න වෙනව.මෙතනදි
අපිට Scanner ක්ලාස්
එක ඕනි වෙනව.ඒක තියෙන්නෙ util package එකේ.
import
java.util.Scanner; මේ විදියට තමයි ඉම්පෝර්ට් කරගන්නෙ.දැන් බලමු කෝඩ් එක.වැදගත්ම දෙයක්
මෙතනදි මතක තියාගන්න.මුල්ම පාරට කෝඩ් එක රන් කරනකොට කමෙන්ට් දාල තියල රන් කරන්න.ඒ ඇයි
කියල මන් කියන්නම්.
import
java.util.Scanner;
public
class ReadFromUser
{
public static void main(String[]
args)
{
Scanner s=new Scanner(System.in);
String name=s.next();
//String fullname=s.nextLine();
long l=s.nextLong();
float f=s.nextFloat();
int i=s.nextInt();
boolean b=s.nextBoolean();
System.out.println("fname is:
"+name);
//System.out.println("full name
is: "+fullname);
System.out.println("long :
"+l);
System.out.println("float :
"+f);
System.out.println("int :
"+i);
System.out.println("bool :
"+b);
}
}
අපි
Scanner එකක් හරහා තමයි
අපිට ඕන වැලියු read කරන්නෙ.මෙතනදි මන් ඒක highlight
කරල තියනව.string,int,long,float,char,Boolean,double
read කරන මෙතඩ් තියනව.
අපි මුලින්ම
space,enter කරනේව
discard වෙනව.එක අකුරක්
හරි ටයිප් කරාට පස්සෙ space,enter කරනේව
input එකට බලපානව.
මුලින්ම
read කරන්නෙ String
එකක්.එතනදි අපිට keybord
එකේ ඕනම character ටිකක් දෙන්න පුලුවන්.ඊට පස්සෙ
enter key ප්රෙස් කරන්න.මෙතනදි වැදගත්ම දේ තමයි character එක පෙලට ටයිප් කරන්න අතරමැද
space නොතිය. Space
තියල type කරොත්
space වෙනකන් තියන String
කොටස විතරයි assign
වෙන්නෙ name කියන වේරියබල් එකට.අනෙක් කොටස discard
වෙනව ආපහු user ගෙන් read karanne නැත්නම්.මේ කෝඩ් එකේදි ඊලගට read
කරන්නෙ long වැලියු එකක්නෙ.එතකොට space එකෙන්
පස්සෙ තියන String කොටස
assign වෙනව l
කියන වේරියබල් එකට.එතකොට
exception එකක් වෙනව.ඒ
නිසා space නැතුව තනි
String එකක් දෙන්න.
මේ මෙතඩ් එක වැඩ කරන්නෙ ඒ විදියට.
import
java.util.Scanner;
public
class ReadFromUser
{
public static void main(String[]
args)
{
Scanner s=new Scanner(System.in);
String name=s.next();
String fullname=s.nextLine();
System.out.println("fname is:
"+name);
System.out.println("full name
is: "+fullname);
}
}
දැන් nm fg fgffgf fgfg කියල ඉන්පුට් එක දීල බලන්න.name එකට nm කියන ටික assign වෙනව.අනෙක් සේරම fullname කියනෙකට.මේ s.nextLine()
කියන මෙතඩ් එකේදි.enter
key ප්රෙස් කරනකන් තියන වැලියු
ටික assign වෙනව. String
fullname=s.nextLine();කියන ස්ටේට්මන්ට් එක විතරක් පාවිච්චි කරල තේරුම්ගන්න මේ මෙතඩ්
එක ගැන.
දැන් ඊලගට
තියෙන්නෙ long read කරන
මෙතඩ් එක.ඉන්පුට් දෙනකොට මේ ටයිප් වල පරාසය ගැන මතක් කරගන්න.පරාසයට අදාල නොවෙන ඒව
assign කරොත් exception ei.තව පාඩම් දෙක තුනක් ඉදිරියේදි exception ගැන කතාකරමු.
ඊලගට float,ඉන්ට්
තියනව.මේ දෙක long read කරන
මෙතඩ් එක වගේමනෙ.තේරුම්ගන්න ලේසියි.
ඊලගට තියෙන්නෙ
boolean.මේ පාඩම පටන්ගන්නකොට
මන් කිව්ව වගෙ ඒ සදහ දෙන්න පුලුවන් අගයන් විතරක්
දෙන්න මතක තියාගන්න.එක්කො true කියල
ටයිප් කරල එන්ටර් කරන්න.නැත්නම් false දෙන්න.
මේව රන්
කරන්න හොඳම විදිය තමයි එක කොටසක් වැඩ කරන විදිය බලන්න අනෙක්වට කොමෙන්ට් දාල.
ඊලග part එකේදි දාල තියන කමෙන්ට්
අයින් කරල රන් කරනකොට වෙන දේ ගැන කියන්නම්.
scanner එකක් use කරාම ඒක close කරන්න.
ReplyDeletes.close(); කියල main method එක close කරන } එකට කලින් දෙන්න.
18 වන lesson එකේ example තියනව.