JAVA Developer Guide Www.nyinaymin
Transcript of JAVA Developer Guide Www.nyinaymin
-
8/3/2019 JAVA Developer Guide Www.nyinaymin
1/225
-
8/3/2019 JAVA Developer Guide Www.nyinaymin
2/225
uGefysLwm*sme,f Zefe0g&Dv? 2005 ckESpf
uGefysLwmoifcef;pm
191
awmhexpression statementstaMumif;udk em;vnf oabmaygufoGm;avmufygNyD/
Null SNull SNull SNull SNull Statement (thetatement (thetatement (thetatement (thetatement (thedododododonothingnothingnothingnothingnothingoperator)operator)operator)operator)operator)Null Statementsqkdwmuawmhprogram flowudk xdef;
csKyfxm;wJh control statements awGudk &yfem;oGm;apwJha&;om;enf;ygyJ/ trSefuawmhsemicolon(;)udk pepfwustokH;jyKjcif;ygyJ/ semicolon (;)qkdwm JAVA LanguagerSm program codeukd wpfaMumif;a&;om;NyD;wkdif; end signtjzpf a&;om;ay;&ayr,fhNull Statementstjzpf a&;om;vkdYvnf; &ygw,f/ uJ atmufrSmavhvmvkdufygOD;/samplesamplesamplesamplesample
if (SomeValue
-
8/3/2019 JAVA Developer Guide Www.nyinaymin
3/225
uGefysLwm*sme,f Zefe0g&Dv? 2005 ckESpff
uGefysLwmoifcef;pm
192
ListingListingListingListingListing 1.91.91.91.91.9A demonstration ofArithmeticoperator (OR) Maths operator
1. classArithClass {2. public static void main (String [ ]args) {
3. int a, b, x;4. a = 100, b = 50;5. x = a-b;6. System.out.print("Diffterence = "+ x);7. }8. }OutputDifference = 50
Analysis
1/ vkdif;eHygwf 1 rSm ArithClassqkdwJhJava primaryclasswpfckudk zefwD;NyD;awmh tzGifhbrace {ukd zGifhxm;ygw,f/vkdif;eHygwf 2 rSmawmhmain( )functionudk a&;om;xm;wmudkawGU&rSmyg/ tzGifhbrace {udkvnf; owdjyKrdrSmyg/
2/ vdkif;eHygwf 3 rSmawmha, b, xqkdwJh ukd,fpm;vS,fudef;awGudkint data typeokH;NyD;awmhDeclasevkyfxm;ygw,f/aemufwpfaMumif;rSmrSa&JUwefzkd;[m100, b&JU wefzkd;[m50vdk Y oD;oefYaMunmxm;ygw,f/ 'Dawmh program
wGufcsufaeoa&GUawmh 'Dwefzkd;[m udef;aoyJaygh/3/ vkdif;eHygwf 5 rSmawmhx[m axJu bukdEkwfw,fqkdwJh
formulaudk a&;om;xm;ygw,f/ uJ 'Dawmh au 100yg/ bu 50yg/ x = 100-50vdkY a&;xm;wmeJY twlwl
ygyJ/ 'Dawmh x = 50qkdwJhtajzudk &NyD;awmh Java BytecodetaeeJY memoryrSm Loadvkyfxm;ygw,f/
4/ vkdif;eHygwf 6 rSmawmhSystem.out.print(" Dif-ference ="+x);qdkNyD; tajzxkwfvkdufwJhtcgrSm OutputtaeeJY Difference=50qkdwJhtajzudkvmjyygw,f/
5/ vkdif;eHygwf 7 rSm main ( ) function&JU closebrace}uk d vmydwfxm;ygw,f/ vkdif;eHygwf 8 rSmawmh pri-mary class&JU closebrace }ud k vmydwfxm;wmudk
awGU&rSmyg/ 'Dawmhprogram[m NyD;oGm;ygNyD/ 'D List-ing[m ArithmeticoperatortaMumif;udk em;vnfoGm;
atmif &Sif;jywJh sampleav;ygyJ/ odyfrcufcJygbl;/
'gayr,fh 'gudk avhvmoabmaygufrSomvQif aemufxyfykdYcsr,fhJava programmingstepawGudk oabmaygufrSmrkdY aoaocsmcsm avhvmxm;apvkdygw,f/
AssignmentAssignmentAssignmentAssignmentAssignment OperatorOperatorOperatorOperatorOperatorAssignment Operator&JU t"dym,fuawmhA&JU wefzkd;
[m 10jzpfw,f/ Buawmh ol[m A&JU 2q&Sdw,fvkdY ajym
&if 20aygh/ b,fvkdodwmvJvkdYajym&if yxrtcsuf AukdtajccHrS wGufvkdY&wmjzpfvkdYyg/ 'Dvkdtcsufwpfcsufukd tajc
cHNyD; wGufvkdY&wmudk programmingvkyfwJhtcgrSm assignvkyfw,fvkdY ac:ygw,f/ ListingawGeJY aemufykdif;rSm aoaocsmcsm&Sif;jyay;ygr,f/ tay:rSma&;jycJhwmudksamplea&;jyygr,f/samplesamplesamplesamplesample
inta=10;//declare aandhis amount is 10int b =a+a;//b =20
uJ 'g[m assignmentoperatorukd tajccHa&;jywmygyJ/ trSefwu,f Assignment operatortaMumif;udka&;&wmuawmhIncrementoperator( + +),Decrementoperator (- -)tygt0if tjcm; Logicalqefqef a&;om;
&wmygyJ/ 'gawGudk atmufrSm OyrmtaeeJYyJ &Sif;jyNyD;awmhusef wmawGukdawmhListingawGeJY wGufjyNyD; Line ByLineMethodeJY &Sif;jyyghr,f/
a = 10;a= b;//b is 10a[m 10yg/ a eJY b [m nDw,f/ 'Dawmhb &JU wefzkd;uvnf;10 yJaygh/
a = 6;b=a++;//b is 7a[m 6yg/ b[m axuf (audk 1aygif;xm;w,fqkdawmh)b[m 7aygh/ 'Dae&mrSm a + +;qkdwm incrementoperator
udk okH;xm;wmaygh/ a&SUrSm aoaocsmcsm&Sif;jycJhNyD;ygNyD/ txl;owdjyK&r,fhtcsufuawmh assignment operatorrSmLvalueeJY RvalueqkdNyD; em;vnf&r,fhtcsuf&Sdygw,f/
t"dym,fuawmh ajymif;vJEkdifwJhwefzkd;awG[m (=) Equalsign&JU right sidebufrSm &Sd&ygr,f/ 'gukdrvaluevkdY
od&ygr,f/ uJ tvG,fa&;jyygr,f/
x=35;//OK'Dvkda&;awmhx&JU wefzkd;[m 35aygh/ rSefygw,f/ wu,fvkdY10xnfhNyD; aygif;r,f/ avhvmMunfhyg/
x + 35 +10;//OK!right
'gvnf; rSefygao;w,f/ nmbufuajymif;vJEdkifwJh udef;wef;zkd;yg0ifEkdifvkdY rvaluevkdY ac:wmaygh/ uJqufMunhfygOD;/
35 = x;//error,notan Lavalue'Dvkda&;&ifawmh rSm;oGm;ygNyD/ 10 + 35 = x; //'Dvkdvnf; a&;vkdYr&Ekdifygbl;/ ajymif;vJEkdifwJhudef;wefzkd;[m EqualSign(=)&JU b,fbufukda&mufvmwJhtwGuf Lavaluejzpfaeyg
w,f/ Lvalue[m (+),(-),(*),(/),(%)vkyfEkdifpGrf;r&Sdqkdwmudk odxm;&if aemufykdif;rSm trSm;udk owdjyKa&Smif&Sm;EkdifrSmyg/ uJ 'gqkd&ifLvalueeJY Rvalueukd tvG,frSwfMu&atmif/
-
8/3/2019 JAVA Developer Guide Www.nyinaymin
4/225
uGefysLwm*sme,f Zefe0g&Dv? 2005 ckESpf
uGefysLwmoifcef;pm
193
ajymif;vJvkdYr&wJh (+) (-) (+) (/) (%) vkyf&r,fhwefzkd;ukd,fpm;vS,fudef; (OR)ukd,fpm;vS,ftu&m
tu&m (char)onf (char)onfLvalue = Rvalue
uJ 'DvkdrSwfxm;r,fqkd&ifawmh Assignment OperatortaMumif;udk em;vnfoabmaygufNyD;awmh a&;wJhtcgrSmrrSm;Ekdifawmhbl;ayghaemf/ uJ qufvufNyD;awmhArithmetic(Maths) operatorseJY Assignment operatorswkdYudk aygif;
pyf tokH;jyKenf;ukd a&;om;&Sif;jyxm;ygw,f/ avhvmMunfhygOD;/
Combining theCombining theCombining theCombining theCombining the Assignment andAssignment andAssignment andAssignment andAssignment and Arithmetic opera-Arithmetic opera-Arithmetic opera-Arithmetic opera-Arithmetic opera-torstorstorstorstors
AssignmenteJY Arithmetic operatorsawGukd &Sif;jyNyD;wJhtcgrSm 'D operatorawGudk aygif;pyftokH;jyKvkdY&wJhMethodawGukd a&;jyyg/ Operatorudk Ekdifeif;atmif tokH;jyK
EkdifrSomvQif programmeraumif;wpfa,muf Developeraumif;wpfa,muf jzpfvmrSmyg/ uJ atmufrSma&;xm;wJh
sampleav;upNyD; avhvmMumwmaygh/samplesamplesamplesamplesample
intmyAge = 5;inttemp;temp= myAge+2;//add 5 + 2 put it in tempmyAge= temp; l//put it back myAge
System.out.println (myAge); //output'D sampleav;udkMunfh&if myAge&JU wefzkd;u 5yg/
temp = myAge + 2;vkdY a&;wJhtwGuftemp = 5 +2; temp= 7&vmNyDaygh/ 'Dae&mrSm odxm;&rSmu tempqkdwm ukd,f
pm;vS,fudef;yg/ ukd,fpm;vS,fvkdY bmvkdYajymovJqkdawmhtemp[m wGufcsufvkdY&xm;wJhtajzudk olYtaeeJY ,m,D
okdavSmifNyD; odrf;rSwfay;xm;wmyg/ aemufwpfaMumif;rSmawmhmyAge = temp;vkdYa&;NyD; temp&JU wefzkd;udkmyAgexJudk jyefvTJay;vkdufygNyD/ tajzxkwfwJhtcgrSmawmhmyAgeeJ YyJ xkwfay;rS myg/ uJ tay:rSma&;cJhovkd a&;wJhtcgrSmtenf;i,fcomplexjzpfovkd odyfruRrf;usif&if trSm;awG
a&;rdNyD; errorawG wufvmEkdifygw,f/ 'Dawmh assign-ment operatorukd tokH;jyKNyD;awmh 'Dvkda&;&if ykdvG,frSmaygh/samplesamplesamplesamplesample
intmyAge=5;myAge =myAge+ 2; //add 5 + 2
uJ 'Dvkda&;vkdufawmh ykdrvG,fbl;vm;/ Algebia ex-pression taeeJYMunfhr,fqkd&ifawmh t"dym,fr&Sdayr,fh
JAVA InterpretertaeeJYuawmh myAge&JU rlvwefzkd; 5xJudk 2aygif;csif;[m myAgeyJvkdY oabmaygufNyD; aemuf
wpfaMumif;rSm myAge&JUwefzkd;[m 7vkdY vmjyrSmyg/uJ 'gqkd&if 'DxufvG,fwJhenf;vrf;ukd a&;jyygOD;r,f/
samplesamplesamplesamplesample
int myAge = 5;
myAge + = 2; // self-assign addition
'Dvkda&;NyD; tajzxkwfvkdufjcif;tm;jzifh7qkdwJhtajzudk&rSmygyJ/ 'Dvkda&;wmudkSelf-assignvkyfw,fvkdYac:ygw,f/Self-assignvkyf&mrSm (+=) additiontjyifSubstraction(- =), division (/ =), multiplication (* =)eJY modulus (%=)awGudkvnf; a&;vkdY&ygw,f/ Listing 1.7tNyD; Incre-menteJY Decrement operatortcef;rSm &Sif;jyNyD;ayr,fh
oufqkdif&m operatortykdif;taeeJY xyfrH &Sif;jywmyg/ tokH;tEIef;? tac:ta0:av;awGutp *kpkdufNyD; avhvmr,fqkd&if tvGeftusKd;&SdrSmyg/
Relational OperatorRelational OperatorRelational OperatorRelational OperatorRelational Operator
Relational OperatorsawGudkTable 1.4rSm a&;jyxm;ygw,f/ avhvmMunfhyg/
TTTTTable 1.4able 1.4able 1.4able 1.4able 1.4 The Relational OperatorThe Relational OperatorThe Relational OperatorThe Relational OperatorThe Relational Operator
Name Operator Sample Evaluates
Equals = = 100 = =50; false
50 = = 50; true
Not Equals ! = 100! = 50; true50 != 50; false
Greater Than > 100 > 50; true
50 > 50; false
Greater Than > = 100 > = 50; true
or Equals 50 > = 50; true
Less Than < 100 < 50; false
50 < 50; false
Less Than < = 100 < = 50; false
or Equals 50 < = 50; true
'D operatorsawGuawmh tao;pdwf&Sif;jyp&mrvdkygbl;/ tvG,fwulodNyD;om;awGyJrkdY ListingawGrSmyJ aoao
csmcsm &Sif;jyygawmhr,f/ rSwfrdatmifawmh avhvmxm;yg/Relational operators&JU Statement evaluales[m [kwfcJh
&if1 (TRUE)? r[kwfcJh&if 0(FALSE)qkdNyD; a&G;cs,fp&m
choiceESpfvrf;xJrSmyJ tvkyfvkyfwmyg/ 'Dawmh tvG,frSwf
&if1 (TRUE) OR ) (FALSE)vkdY rSwfxm;yg/ 'DawmhDatatypeZ,m;rSmyg0ifwJh Boolean type eJY ,SOfwGJNyD;vnf;
tokH;jyKEkdifygw,f/ tcktcgrSmawmhBoolean typeukd tokH;
-
8/3/2019 JAVA Developer Guide Www.nyinaymin
5/225
uGefysLwm*sme,f Zefe0g&Dv? 2005 ckESpff
uGefysLwmoifcef;pm
194
rjyKao;bJ sampletaeeJYyJ a&;jyygr,f/ RelationalOperatorstaMumif;udk em;vnfoabmaygufoGm;atmif
Listing 1.10eJYa&;NyD; &Sif;jyxm;ygw,f/ avhvmMunhfvdkufygOD;/
Listing 1.10Listing 1.10Listing 1.10Listing 1.10Listing 1.10Ademonstration ofbraching baredon relationaloperators1. class RelaClass {2. public static void main ( String args
[ ] ) {3. int RedSox, Yankee;4. RedSox = 9, Uamlee = 18'5. if (RedSox > Yankee) System.out.println
("RedSox Score!");6. if (RedSox < Yankee) System.out.println
("Yankee Score!");7. if(RedSox == Yankee) System.out.println
("Equal Score!");8. }9. }outputYankee Score!Analysis
1/ 'D programuawmh relational operatorsukd jrifwwfatmif a&;jywJh sampleav;ygyJ/ i,f nD BuD;qkdwJhrelational operatorawGudk if statementeJY wGJNyD;awmh
tokH;jyKxm;ygw,f/ vkdif;eHygwf 1 rSm RelaClassqkdwJhprimary class
ukd zefwD;NyD;awmhopen brace {
ukd pwifxm;wmudk awGU&rSmyg/
2/ vkdif;eHygwf 2 rSmawmhmain ( ) functionukd a&;om;xm;ygw,f/ main ( ) function&JU open brace {ukdvnf;owdjyKrdrSmyg/ vkdif;eHygwf 3 rSmawmh int data typeukdtokH;jyKNyD;awmhRedSoxeJY Yankeeqkdwmudkdecalarevkyfygw,f/ vkdif;eHygwf 4 rSmawmh RedSox&JU wefzkd;onf9jzpfNyD; Yankee&JU wefzkd;onf18ygvkdY aMunmygw,f/ 'DprogramudkRunvkyfaeoa&GUawmh 'Dwefzkd;awG[m udef;aoygyJ/ int data typeudk tokH;jyKNyD;awmhDeclarevkyfpOfxJu wefzkd;awGudk xnfhoGif;aMunmvkdY
&ayr,fh tckrS tajccHupNyD; avhvmolawG rsufpd&Sif;atmifvkdY vkdif;cGJNyD;awmh a&;jy&wmyg/
3/ vkdif;eHygwf 5 rSmawmh if statementudk okH;NyD; Rela-tional operatoreJY wGJzufNyD;awmhRedSox[m Yan-
keexuf BuD;ovm;? vdkY ar;ygw,f/ RedSox&JUwefzkd;u 9jzpfNyD; Yankee&JUwefzkd;u 18yg/ 'DawmhrBuD;bl;qkdawmhif (expression)aemufuygwJh state-
mentukd tvkyfqufvkyfp&mrvkdygbl;/ EscapejzpfNyD;
awmh aemufwpfaMumif;udk qif;oGm;rSmyg/
4/ vkdif;eHygwf 6 rSmawmh RedSox[m Yankeexufi,fovm;vkdY vmNyD; testvkyfygw,f/ 'DtcgrSm RedSox[m Yankeexuf i,faeNyDqkdawmh rSefoGm;ygNyD/ tJ'Dawmhexpressionaemufu statementukd tvkyfqufvkyfwJh
tcgrSm Yankee Score!qkdwJhtajzudk OutputtaeeJYvmjyygw,f/
5/ vkdif;eHygwf 7 rSmawmhRedSoxeJY Yankee[m wlnDovm;qkdwJh expressionukd vmNyD; testvkyfygw,f/tajz rSefukd&NyD;ayr,fh break; Control StatementukdtokH;jyKxm;jcif;r&SdwJhtwGuf qufvufNyD;awmh testvkyfwmyg/ 'gayr,fh rnDwJhtwGuf olY&JUaemufu State-
mentudk tvkyf qufrvkyfbJ escapejzpfNyD;awmh vkdif;eHygwf 8 rSm a&;xm;wJh min ( ) function&JU closebrace }qDukd qif;oGm;ygNyD/
6/ vkdif;eHygwf 9 rSmawmh primary class&JU close brace}ukd vmydwfxm;NyD;awmh program[m NyD;oGm;ygNyD/ uJ'gqkd &if outputxGufwJhtxdukd aoaocsmcsm avhvmcswGufNyD; avhvmyg/ RunvkyfNyD;awmhvnf; outputudktestvkyfMunfhyg/trSefwu,fuawmh 'DRelational operatorstaMumif;
udkListing 1.4rSm xnfhoGif;a&;om;NyD;ygNyD/ 'gayr,fh ouf
qkdif&mtcef;u@tvkduf jzpfapcsifwJhtwGuf xyfrHNyD;sample taeeJY a&;om;&Sif;jy&wmyg/ SampleawG[mtvG,fawGyJjzpfaewJhtwGuf avhvmoif,l&mrSm rayghqapcsifygbl;/ avhvm&mrSm ykdw,fqkdwm r&Sdygbl;/ aemufykdif;
chapter 2upNyD;awmh tqifhjrifhykpmawGcsnf;yJ wGufcsuf&
awmhrSmyg/ wcsKdUae&mawGrSmqkd&if EkdifiHwumtqifhExam;awGu JAVA Questionta[mif;awGudk tokH;jyKNyD;awmhoifMum;ykdYcsay;oGm;rSmyg/ 'D chapter 1rSm JAVA Lan-guagetaMumif;udk pwif avhvmoif,lwmjzpfvkdY tvG,f
qkH; t&Sif;qkH;jzpfatmifsampleawGListingtvG,fav;awGeJYyJ &Sif;jyaewmyg/ tvG,fulqkH;ajym&&ifawmh
u? c rwwfbJeJY jrefrmpma&;vkdYzwfvkdY r&Ekdifawmhygbl;/A, B, C, DrwwfbJeJY t*Fvdyfpm a&;vkdYzwfvkdY r&Ekdifygbl;/+, -, *, /udk em;rvnf&ifvnf; ocsFmwGufvkdYr&Ekdifygbl;/
tajccH JAVA Language taMumif;udk ykdifEkdifrSomvQifTheoryoabmw&m;udk em;vnfoabmaygufrSomvQifprogrammertqifh Developertqifh SoftwareEngi-
-
8/3/2019 JAVA Developer Guide Www.nyinaymin
6/225
uGefysLwm*sme,f Zefe0g&Dv? 2005 ckESpf
uGefysLwmoifcef;pm
195
neertqifhawGudk wufvSrf;EkdifrSmjzpfygw,f/ Sommervillea&;om;wJh Software Engineeringpmtkyf[m Lancoster
Universityu xkwfa0wmyg/ tJ'DpmtkyfrSmqkd&if c + +eJYAdaprogramminglanguageukd tajccHNyD;rS &Sif;vif;oGm;
wmudk awGU&&if uRefawmf bmudkqkdvkdovJqkdwmudk owdjyKem;vnfEkdifrSmyg/ 'gaMumifh tajccHykdifEkdifatmif enf;rsKd;pkHeJY&Sif;jyaewmyg/ SoftwareEngineeringoifkd;udk ,ckvuf&SdComputerUniversiy&CollegeawGrSm jy|mef;xm;yg
w,f/
LogicalLogicalLogicalLogicalLogical OperatorOperatorOperatorOperatorOperatorLogical operatorsawGuawmh atmufrSm Table 1.5
taeeJY a&;jyxmygw,f/ Logicaloperators[m omref
operators(tjcm; Arithmetic,Assign,RelationalpwJhoperators)awGxuf ykdeufeJNyD;awmh awG;ac:arQmfjrifokH;oyf
rIawG yg0ifygw,f/ Operatorswpfckcsif;pDudk oD;oefY &Sif;jyygr,f/
TTTTTableableableableable1.51.51.51.51.5TheTheTheTheTheLogicalLogicalLogicalLogicalLogicalOperatorsOperatorsOperatorsOperatorsOperators
Operators Symbol Example
AND && expression1&&expression 2OR || expression1|| expression 2NOT | |expression
uJ 'DZ,m;rSmyg0ifwJh Logical operators&JU symbol
av;awgudk rSwfrdatmifMunfhNyD;&ifawmh atmufrSm Logi-caloperatorsawGudk wpfckcsif;pD&Sif;jywmudk avhvmMunfh
yg/ tvGefta&;BuD;wJhtwGuf aoaocsmcsmavhvmyg/
LogicalLogicalLogicalLogicalLogical ANDANDANDANDAND
Logical ANDoperator&JU pGrf;aqmifrIuawmh tqkdjyK
csufESpfckvkH; rSefuefrSomvQif tJ'DtqkdjyKcsufukd vufcHrSmyg/tu,f wpfcsufcsufuom rSm;ae&ifawmh tJ'DtqkdjyKcsufawG[m vufcHjcif; r&SdEkdifawmhygbl;/ OyrmtaeeJY &Sif;jy&&ifawmh
uJ 'Dawmh tqkdjyKcsuf expression 1uawmh rSefygNyD/ qmaew,faygh/ Expression 2uawmh rif;aiGa&myg&JUvm;?
qkdNyD; tqkdjyKxm;ygw,f/ xrif;qmayr,fh aiGomryg&ifawmh pm;vkdY&yghrvm;?r&Ekdifygbl;/ 'Dawmh aiGygygw,fqkdwJhtqkdjyKcsufukd vufcHvkdufygNyD/ uJ 'gqkd&ifawmh
xrif;vnf;qmw,f/ AND (NyD;awmh) aiGvnf;ygw,f/ 'Dawmh xrif;pm;vkdY&NyDayghaemf/ 'DtawG;tac:enf;Methodav;udk avhvmMunfhr,fqkd&if AND (&&) op-eratortaMumif;udk tajccHawmh em;vnfoGm;rSmyg/ Ex-pression 1eJY expression 2qkdwJh tqkdjyKcsufESpfcsufpvkH;
rSefrSomvQif aemufu tvkyfukd qufvkyfrSmyg/ ProgramcodetaeeJYa&;&ifawmhANDvkdY a&;vkdYr&ygbl;/ (&&)
qkdwJhSymbolav;udkyJ tokH;jyK&rSmyg/ atmufrSm sample
taeeJY a&;jyxm;ygw,f/ avhvmMunfhyg/ Logicalpoerator ANDukdif statementeJYwGJNyD; okH;jyxm;ygw,f/samplesamplesamplesamplesample
if((x==5)&&(y==5))System.out.print("Equal!");
t"dym,fuawmh xuvnf; 5eJYnDNyD; y[mvnf; 5eJYnDrSomvQifEqual!qkdwJhtajzudk xkwfay;EkdifrSmyg/ tu,f
xonf 5eJYrnD&ifjzpfap okdYwnf;r[kwf yonf 5eJYrnDcJh&ifjzpfjzpf wpfckckuom 5eJYrnDcJh&ifawmhEqualqkdwJhoutputukd xkwfay;Ekdifyghrvm;?rxkwfay;Ekdifygbl;/ 'g[mAND (&&) operatorukdusevkyfwJhenf;ygyJ/ aoaocsmcsm
om avhvmMunfhr,fqkd&if tvGeftokH;0ifwJh operatorjzpfaMumif;udk awGU&rSmyg/ aemuf chapterawG&JU ListingawGrSmxnfhoGif;tokH;jyKNyD; &Sif;jyygr,f/ qufvufNyD; LogicalOr (!!) operatorukd avhvmMunfhMuygOD;pkdY/
Logical ORLogical ORLogical ORLogical ORLogical OR
Logical OR operator&JU pGrf;aqmifEkdifrIuawmh wpfckr[kwf wpfckqdkwJh pGrf;aqmif&nfyJjzpfygw,f/ tqkdjyKcsufexpressionESpfckxJu wpfckrSef&ifjzpfap? ESpfckpvkH;rSefonf
jzpfap olY&JUaemufu tvkyfukd qufvkyfcGifhjyKrSmyg/ OyrmtaeeJYa&;jyygr,f/
expression 1 expression 2 statement
rif;xrif;wu,f AND(NyD;awmh) aiGa&m 'grSom xrif;qmaeovm;? yg&JUvm;?pm;vkdY&rSmaygh/
operator
expression 1 operator expression 2 statementrif;rSm OR ta
-
8/3/2019 JAVA Developer Guide Www.nyinaymin
7/225
uGefysLwm*sme,f Zefe0g&Dv? 2005 ckESpff
uGefysLwmoifcef;pm
196
ygcJh&if?qkdwJhexpression 2rSefcJh&ifvnf; vkdcsifwmudk 0,fcGifh&rSmaygh/ tJ'DexpressionESpfckxJu expressionwpfckck
jzpfap? expressionESpfckvkH;jzpfap rSefcJh&if aemufutvkyfjzpfwJh vkdcsifwmudk 0,fvkdY&rSmayghqkdwJh statementukd tvkyfqufvkyfrSmyg/ OR operatorudk tvG,fwulrSwf&ifawmhwpfckr[kwf wpfckvdkY tvG,frSwfyg/ ESpfckpvkH;rSefcJh&ifvnf;statement u tvkyfqufvkyfrSmyg/ tvG,frSwf&atmif
a&;jyygr,f/
r[kwfcJh&if statementukd tvkyfvmvkyfykdNyD;em;vnfoGm;atmifvkdY tay:rSma&;xm;w sample
codeudkvnf; aemufwpfenf; a&;jyygr,f/ ykdNyD; com-pact jzpfNyD;awmh trsm;qkH; usevkyfwJhenf;vrf;ygyJ/ tajz
uawmh twlwlygyJ/ ESpfoufwJha&;enf;udk tokH;jyKEkdifygw,f/samplesamplesamplesamplesample
if(x!=5)system.out.print("HelloJAVA|");uJ 'Dvkda&;&ifvnf; tay:u sample codexuf ykdNyD;
awmh vG,fulNyD;awmh compact jzpfwmaygh/ 'D LogicaloperatorawG[m tjcm; Assignmentoperator,Arith-meticoperator(Maths),RelationaloperatorsawGxuf
ykdNyD;eufeJygw,f/ Programmingvkyf&mrSm programflow
udk xdef;csKyf&mrSmjzpfap Limiteddatasystemukd tokH;jyKwJhtcgrSmjzpfap tokH;jyK&wJh operatorsawGyJjzpfvkdY examplersKd;pkHay;NyD; enf;vrf;trsKd;rsKd;eJY &Sif;jyaewmyg/ xyfcgwvJvJ zwfINyD;awmh awG;ac:Munfhyg/ 'grSomvQif xl;cRefxufjrifwJh EkdifiHwumtqifhrDJAVAynm&Sifwpfa,mufjzpfvmrSmyg/
,aeY jrefrmEkdifiHrSmomru EkdifiHawmfawmfrsm;rsm;rSmpdwf0ifwpm; ajzqkdaeMuwJh *syefEdkifrSppfaq;wJh JITECFundamental Engineering Examinationtygt0if EkdifiH
wumtqifhrD ExaminationawGrSmyg 'D operatorsawG
taMumif;udkobjective type (All questions are
com-
pulsory) ykHpHeJY ar;ovkdselect oneofthefourques-tionsqkdNyD; JAVA Language, C Language, FortranLan-guage, Assembler Language pwmawGeJY programdecription awGay;NyD;rS sub-questionsawGukdjzpfap? op-eratorsawGeJY expression awG? statements awG? con-trol structureawGudk aygif;pyf NyD; a&;zGJUwJhae&mawGrSmyJBlankcsefNyD; jznfhpGuf&r,fhAnswersawGudkawmh atmufrSmchoicevkyfapygw,f/ 'gqkd aoaocsmcsm avhvmMunfhr,f
qkd&if ExamTypeawG ajzqkdatmifjrifEkdifzkdYtwGuf op-eratorstykdif;udk em;rvnf&if ajzqkdEkdifrSmr[kwfbl;qkdwm
udk od&Sdem;vnfxm;apcsifygw,f/ OyrmtaeeJY JITECEx-aminationu JAVAar;cGef;a[mif;wpfyk'fukd a&;jyxm;yg
w,f/ avhvmNyD;&ifoperatorsawG&JU tokH;0ifykHeJY uRefawmfoifwJh JAVALanguage&JU pepfusykHudk em;vnfoabmaygufoGm;rSmyg/ JAVA Question program typeukdyJxnfhay;xm;wmyg/ Sub-questionsawGudkawmh xnfhray;xm;ygbl;/ SampletaeeJY yJjzpfvkdYyg/
>
wpfckr[kwfwpfckjzpfcJhvQifjzpfapStatementukdtvkyfvmvkyf
ESpfckpvkH;jzpfcJhvQifjzpfap
Programmingvkyf&mrSmawmhORvkdY a&;vkdYr&ygbl;/
(!!) symbolav;eJY a&;&ygw,f/ SampletaeeJY codeLineav; a&;jyxm;ygw,f/ avhvmMunfhyg/samplesamplesamplesamplesample
if((x==5)11(y==5))System.out.print("OK1");
'Dprogram codea&;xm;ykHuawmhxonf5eJYnDw,f/OR('grSr[kwf) y[m 5eJYnDr,f/ 'Dawmh ESpfckpvkH;jzpfap?
wpfckckjzpfap 5eJYnDcJh&ifOK:qkdwJhtajzudkoutputtaeeJYxkwfay;rSmyg/ uJ 'D sampleav;udkMunfhNyD; aoaocsmcsmavhvmr,fqkd&ifLogical OR (||)taMumif;udk em;vnfoabmaygufoGm;rSmyg/ Logical AND (&&)eJY LogicalOR (||)taMumif;udk em;vnfoGm;NyDqkd&ifawmhLogical NOT
(!)taMumif;udk qufvufavhvmygOD;/
Logical NOTLogical NOTLogical NOTLogical NOTLogical NOT
Logical NOTukd tokH;jyKwJh methoduawmh rjzpfcJhvQif (rjzpfcJhrSomvQif) ol&JUaemufu statementukd tvkyfqufvkyfrSmyg/ uJ 'DoperatortaMumif;udkawmh OyrmtaeeJY ra&;jyawmhbJ sample coedetaeeJYyJ a&;NyD; &Sif;jyygawmhr,f/ t"dym,feufeJwJhtwGuf aoaocsmcsmavhvmyg/samplesamplesamplesamplesample
if(!(x==5))System.out.print("Hello JAVA|);
'Dcode&JU t"dym,fuawmhx[m 5eJYrnDrSomvQif
Hello JAVA!qkdwJh output statementukd xkwfay;rSmyg/rnDrS xkwfay;rSmaemf/ wu,fvkdY x&JUwefzkd;[m 5eJYnDcJh&ifawmhHelloJAVA!qkdwJhoutput statementudk tvkyfvmNyD;vkyfygOD;rvm;?rvkyfawmhbJ escapejzpfNyD;aemuf codeLinewpfaMumif;udk qif;oGm;rSmyg/ 'g[m NOT (!) op-eratorudk tokH;jyKwJhmethodygyJ/ uJ 'gudk tvG,frSwfMu&
atmif/
-
8/3/2019 JAVA Developer Guide Www.nyinaymin
8/225
uGefysLwm*sme,f Zefe0g&Dv? 2005 ckESpf
uGefysLwmoifcef;pm
197
Q13Q13Q13Q13Q13
ConsiderConsiderConsiderConsiderConsiderthethethethethefollowing JAfollowing JAfollowing JAfollowing JAfollowing JAVVVVVAAAAA program then answerprogram then answerprogram then answerprogram then answerprogram then answer
Sub-questionsSub-questionsSub-questionsSub-questionsSub-questions1-41-41-41-41-4(Program)line no.
1. public class Swapper {2. byte myData [][];3. public static void main (String args
[]) {4. Swapper obj = new Swapper();5. obj.init();6. obj.sorting();7. obj.printData();8. }9. public void init () {10. myData = new byte[5] [];11. for (int i = 0; i < myData.length;
i++){12. myData[i] = new byte[5-i];13. }14. for (int i = 0; i
-
8/3/2019 JAVA Developer Guide Www.nyinaymin
9/225
uGefysLwm*sme,f Zefe0g&Dv? 2005 ckESpff
uGefysLwmoifcef;pm
198
guage (SQL)rSmqkd&if 'DoperatorsawGukd tokH;jyK tajccHNyD;rS DataBase Command Control System (DBCCS)
taeeJY tokH;jyK&wm yg/ 'DtcsufawGudk od&Sdxm;NyDqkd&ifawmhoperatorsqkdwm[m programming languagueawGrSm
b,favmufta&;ygw,fqkdwmudk od&Sdem;vnfEkdifrSmyg/
Note:Note:Note:Note:Note: SQLqkdwm Structure Query Languageukdajymwmyg/ DataBase Technologiestykdif;rSm tokH;jyKwJhDataBase LanguageawGxuf ,aeYacwfrSm SQL Lan-guage[m taumif;qkH; DataBase Languagewpfcktjzpf
ausmfMum;ygw,f/ SQLukd1970rSm developedvkyfcJhygw,f/ 'D Languageukd pwif DesigncscJhuwnf;u datamanipulationvkyfzkdY &nf&G,fNyD; DesigncscJhwmyg/ E.FCodd,uaeNyD;awmhtracedvkyfcJhNyD; SQL query language
udkANSIu standardvkyfcJhygw,f/ ANSI SQL 89 stan-dardeJY ANSI SQL 92 sandardqkdNyD; owfrSwfay;xm;cJh
ygw,f/ 'D language[m DataBase Technologiestykdif;rSmomru web developementvkyfief;awGrSm Script Lan-guageawGeJY wGJzufNyD; tokH;jyK&ygw,f/ Script Language
qdkwmawGuawmhSGML (Standard Gnerralized MarkupLanguage), HTML (Hyper Text Markup Language),
XML (Extensible Markup Language)tp&SdwJh Lan-guageawGygyJ/ 'gaMumifh tcsKdUuvJ Script Language
awGudkMarkup LanguagevkdYvnf; ac:ygao;w,f / ,aeYacwfrSm odxm;oifhwJhtaMumif;awGygyJ/ 'gaMumifh uRefawmfhtaeeJY DataBase Technologies and DataBase Lan-guage with SQLqkdNyD; oD;oefY a&;om;wifjyxm;ygw,f/JAVA Developer GuidetaMumif;tNyD;rSm tJ'Dpmtkyfukd
wifjyay;EkdifzkdY taumif;qkH; a&;om;xm;ygw,f/ ta&;tBuD;qkH;tcsufuawmh b,f programming
languageudkyJ avhvmavhvm Program Flowukd odatmifvkdY tacgufacguftcgtcg vufeJYcswGufNyD; AnalysisawGudk aoaocsmcsmzwfMunfhjcif;[m codeawGudkinterpreterrSm runvkyfNyD;rS avhvmwmxuf ykdNyD;wwfajrmufvG,fw,fqkdwmukd uRefawmfh&JUtawGUtBuHKtaeeJY wifjyvdkygw,f/
'gaMumifh Listingwpfyk'fcsif;ukd vufeJYcswGufyg/ NyD;rSrunvkyfNyD;awmh avhvmyg/ uJ qufvufNyD;awmh RelationaloperatorseJY Logical OperatorsESpfckudk ,SOfwGJtokH;jyKwJhRelationaltykdif;ukd avhvmMunfhygOD;pkdY/
Relational PrecedenceRelational PrecedenceRelational PrecedenceRelational PrecedenceRelational Precedence
Relational Precedenceqkdwmuawmh RelationaloperatorseJY Logical operatorsESpfckukd ,SOfwGJNyD; tokH;jyK
wmyJjzpfygw,f/ Complexyjzpfw,fvkdY xif&ayr,fh tvGeftokH;0ifwJhenf;ynm&yfjzpfwmaMumifh aoaocsmcsm &Sif;jy
xm;ygw,f/ SampletaeeJY a&;jyxm;ygw,f/ avhvmMunfhyg/
samplesamplesamplesamplesample
'Dcodeav;udkavhvmNyD; tajzxkwfvkduf&if atmufrSm
exp1 exp2 exp3 statement
if (x > 5 && y>5) || z>5) System.out.print ("OK!");
a&;jyxm;wJhtajzawGudk &rSmyg/xonf5xufBuD;r,f (ANDNyD;awmh) yuvnf; 5xuf
BuD;r,f (OR'grSr[kwf) zonf5xufBuD;r,fqkd&if OK!qkdwJhOutputukd vmjyrSmyg/ wpfenf;ajym&&ifawmhLogical
taeeJY xeJY yonf 5xufBuD;&ifjzpfap (OR) zonf 5xuf BuD;onfjzpfap aemufu Statementukd tvkyfoGm;vkyfNyD;awmhoutputudk xkwfay;rSmyg/
aemufwpfenf;uawmh xu 3jzpfaeNyD; yuawmh 10jzpfaeygw,f/ zuawmh 10yg/ 'gvnf; StatementukdtvkyfqufvkyfNyD; outputukd xkwfay;ygw,f/ bmaMumifhvJqkdawmh xuvnf; 5xufBuD;rS&rSmyg/ yu 10jzpfwkdif;r&ygbl;/ Expression 1eJY Expression 2udkANDeJY cHa&;xm;vkdYyg/ 'gayr,fh 'Dbufu OR (!!)cHa&;xm;wmu zonf 5xufBuD;vQifqkdawmh xeJY y[m wpfwGJaygh/ olwkdYrSm;oGm;ayr,fh zuawmh 10qkdawmh aemufu statement
ukd tvkyfqufvkyfvkdY &oGm;wmyg/ ykHpHjyNyD; a&;jyygr,f/'DtcgrSm a&SUu expression 1u rSm;oGm;awmh ex-
xu 3NyD;awmh yu 10jzpf&r,f? 'grSr[kwf zu 10if (x > 5 && y > 5 || z > 5)
exp 1 exp 2 exp 3
xeJY yESpfckpvkH;xuf OR z u 5xufBuD;&ifjzpfjzpfBuD;&ifBuD;&r,f
pression 2uvnf; tusLH;r0ifawmhygbl;/ 'gayr,fh ex-pression 3u rSefaeawmh aemufu statementukd tvkyf
qufvkyfygw,f/ uJ 'gqkd&ifawmh aemufykHpHwpfrsKd; a&;jyygr,f/ 'gayr,fh 'Dvkda&;wm[m trSm;BuD;qkdwmudkawmh owd
jyKyg/ SampletaeeJY a&;jywmyg/samplesamplesamplesamplesample : if((x>5)&&(y>5)||z>5))System.out.
print ("OK!");//error!test
t&ifa&;jycJhwJh sample codea&;jywm eJYwlovkd&Sdayr,fh trSefwu,fawmhrwlygbl;/ olY&JUt"dym,fukd atmufrSma&;jyxm;ygw,f/ aocsmavhvmMunfhyg/
-
8/3/2019 JAVA Developer Guide Www.nyinaymin
10/225
uGefysLwm*sme,f Zefe0g&Dv? 2005 ckESpf
uGefysLwmoifcef;pm
199
x[m 5xufBuD;&r,f/ AND(NyD;awmh) y OR(okdYr[kwf)zonf 5xufBuD;rSomvQif taemufu statementukd
tvkyfvkyfNyD; outputjzpfwJhOK!qkdwJhtajzudk vmjyay;rSmyg/t&ifa&;jycJhwJh sample codeeJYwlovkd&Sdayr,fh yeJY zudkOR (!!)oauFwcHa&;wJhtcgrSm tzGifhtydwfbracket( )awG cHa&;vkdufwJhtwGuf tckvdk awG;ac:ajz&Sif;rIajymif;
oGm;wmyg/'gaMumifh programawGudk Line By Line MethodeJY
&Sif;jywJhtcgrSm tzGifh^tydwf pwJh braceawGutp twdtus &Sif;jywmudk owdjyKrd rSmyg/ uJ qufvufNyD;awmhLogical testawGtaeeJY operatorawGudk usevkyfwmudk
avhvmMunfhygOD;/
MoreMoreMoreMoreMoreAboutAboutAboutAboutAbouttesttesttesttesttestthethethethetheLogicalLogicalLogicalLogicalLogicalSSSSStatementstatementstatementstatementstatements tay:rSm a&;jycJhwJh sample code awGudk em;vnf
oabmaygufNyDqkd&ifawmh ykdNyD; vG,fulwJh clear cut styleudk a&;jyygr,f/ JAVA LanguagerSm zeroqkd&if FalsevkdY odxm;&ygr,f/ uJ 'gudkrSwfxm;NyD;awmh atmufrSma&;xm;wJh sample codeudk avhvmMunfhyg/samplesamplesamplesamplesample
if (x) // if xis true (nonzero)x = 0; // setit to o (zero)
t"dym,fuawmhif(x)qkdwmu xonf0 (zero)r[kwfaomudef;wpfckckjzpfcJhvQif atmufwpfaMumif;upNyD;awmh pro-gramudkcalculsvkyfaeoa&GU 0 (zero)taeeJYyJsetvkyfNyD;
awmh wGufcsuf&rSmyg/ 'D codeudkyJ clearjzpfatmif a&;jyygOD;r,f/ t"dym,fuawmh twlwlygyJ/
sample :sample :sample :sample :sample :if(x!= 0) //ifis nonzerox= 0; //setit to 0(zero)
tay:ua&;jycJhwJhsampleeJY t"dym,fuawmh twlwlygyJ/xonf 0 (zero)r[kwfbl;r[kwfvm;?qkdNyD; (!) LogicalNOT operator udk tokH;jyKNyD;awmh a&;om;xm;wmyg/
'Dawmhx[m 0 (zero)r[kwfcJhwmeJY setvkyfNyD;awmh wGufcsuf
awmhrSmyg/ uJ tJ'Dtay:rSm a&;jycJhwmawGeJY samemeanjzpfwJh samplecodeudk a&;jyygr,f/ avhvmMunfhygOD;/
sample :sample :sample :sample :sample :if(!x) //if xisfalse(zero)if(x=0)//ifxiszero
'Dvkda&;vkdufjcif;tm;jzifhtay:u a&;jycJhwJh sampleawGeJYt"dym,fwlnDayr,fh tckaemufqkH;a&;jywJhsampleu ykdNyD;awmh easiertounderstandjzpfwmaygh/ uJ 'gqkd&ifawmh
operatorstaMumif;udk vkH;0em;vnfoabmaygufNyD;awmhJAVA Languageukd Ekdifeif;atmif a&;om;Ekdifr,fvkdY ,kHMunf
ygw,f/ oufqkdif&m ListingawGrSmvnf; xnfhoGif;NyD;&Sif;jyay;ygOD;r,f/
Note:Note:Note:Note:Note: owdjyKrSwfom;&rSmuawmh Logical ANd&JUsymbol[m (&&)symbolyg/ Single (&) symbolqkd&if
r[kwfygbl;/ 'D single (&)symboltaMumif; aemufchap-terawGrSm &Sif;jyygr,f/ OR&JU Symboluvnf; (||)yg/Single (|) Symbol[m differentoperatorygyJ/ 'DtaMumif;
awGudk oD;oefY a&;om;&Sif;jyygr,f/ tvG,fwifjy&&ifawmh(&)eJY (|)symbolawG[m ANDoperatoreJY ORopera-torawGrSm similarjzpfayr,fhbooleantyperSmyJ tokH;jyKyg
w,f/
CaseCaseCaseCaseCaseSensitivitySensitivitySensitivitySensitivitySensitivity'Dae&mrSm JAVA LanguagetaMumif;udk tawmftoifh
oabmaygufoGm;NyDqkdawmh txl;owdjyK&r,fhtcsufuawmhJAVA[m C & C ++wkdYvkdyJCase Sensitivityjzpfw,fqkdwJh
tcsufygyJ/ OyrmtaeeJY &Sif;jy&&ifawmh agevkdY aMunmxm;wJhtrnfukdAgevkdY ac:okH;vkdYr&ovkdAGEvkdY ac:,ltokH;jyKvkdYvnf; r&ygbl;/ ErrorwufvmrSmyg/ agevkdYDeclarevkyfcJh&if ac:,ltokH;jyKwJhtcgrSmvnf; agevkdYyJ
ac:,ltokH;jyK&rSmyg/ AgevkdY DeclarevkyfcJh&ifvnf; AgetaeeJYyJ ac:,ltokH;jyKrSmyg/ tJ'Dvkdjzpfwmudk caseseniti-vityjzpfw,fvkdY ac:ygw,f/ 'gayr,fh wcsKdU Language
awGrSmawmh rjzpfygbl;/ agevkdY DeclarevkyfcJhayr,fh AgeyJjzpfjzpf? AGEyJjzpfjzpf ac:,ltokH;jyKvkdY&ygw,f/ OyrmtaeeJYajym&&ifawmh 'DaeY jrefrmEkdifiHtygt0if EkdifiHawmfawmfrsm;rsm;rSmyg familyjzpfaewJh Visual Basic&JU rdcifBA-SIC Language, PascalpwJhHigh-Level-LanguageawGrSmcase sensitivity rjzpfygbl;/ 'gaMumifh JAVALanguage
rSmawmhprogram codeawGa&;&mrSm Declare vkyfwJhtrnfeJYac:,ltokH;jyKwJhtrnfukd owdjyKrSomvQif Case Sensi-tivityrjzpfrSmyg/
uJ 'gqkd&ifawmhJAVA Language&JU tajccHtkwfjrpfeJYoperatorawGtaMumif;udk jynfhjynfhpkHpkH oabmaygufoGm;NyD
vkdY xifygw,f/ qufvufNyD;awmh ykdYcsay;zkdY usefaeao;wJhLooping StructureeJY control statementawGtaMumif;udk1.4 Appendix of control structure in JAVAqkdNyD; ykdYcsay;
xm;ygw,f/ qufvufavhvmMuygpkdY/
ausmfaZ,smav; (uom)
-
8/3/2019 JAVA Developer Guide Www.nyinaymin
11/225
uGefysLwm*sme,f azazmf0g&Dv? 2005 ckESpff
uGefysLwmoifcef;pm
169
1.41.41.41.41.4 Appendix of control statements in JAAppendix of control statements in JAAppendix of control statements in JAAppendix of control statements in JAAppendix of control statements in JAVVVVVAAAAA
JAVA LanguagetaMumif;udk wifjywJhae&mrSm tajccH
aumif;jzpfatmif NyD;awmh tjcm; LanguageawGeJY odyfNyD;familyrjzpfcJhwJholawGtwGufyg &nf&G,fcJhwJhtwGuf oif
Mum;ykdYcswJhae&mrSm pepfusatmif? vG,fulatmif oufqkdifwJhListingawGeJY ,SOfwGJ NyD; ykdYcsavh&Sdygw,f/ 'DtcgrSm 1.3
Statements Expression and Operatorstcef;rSm ykdYcscJhwmawG[m vkdtyfvmNyDjzpfvkdY Mum;jzwf ykdYcs&jcif;yJ jzpfygw,f/ 'gaMumifhrkdY tckykdYcswJh tcef;u@[m 1.2 Decision,
control Structure and Looping Statements of JAVA&JUtqufvkdYyJ rSwf,lxm;yg/ ykdNyD;jynfhpkHoGm;atmifvkdY aemufqufwGJtaeeJY jznfhpGufw,fqkd&ifvnf; rrSm;ygbl;/ uJ qufvufNyD; avhvmvkdufygOD;/
TheTheTheTheThe While SWhile SWhile SWhile SWhile Statementtatementtatementtatementtatement
JAVA LanguagerSm for statementvkdyJ Looping(OR) Repetitionvkyfay;wJh control statementwpfck&Sdyg
w,f/ tJ'guawmhwhile statementygyJ/ While State-ment&JU Syntax_formukd atmufrSm a&;jyxm;ygw,f/while (boolean expression){
statement 1;statement 2;
. . . . . . . . }
While Statement rSm yg0ifwJh Syntax_form[mtay:rSm a&;jyxm;wJhtwkdif;ygyJ/ Program statement[mwhileukd a&mufwJhtcsdef while&JUaemufu expressionukd
rSefrrSef pDppfygw,f/ Boolean expressionvkdY a&;xm;&wJhtaMumif;&if;u data typeZ,m;udk avhvmrd&if Bool-
ean TyperSm
TRUE (OR) FALSEqkdwJh
conditionsESpfckyJ&Sdw,fqkdwmudk odxm;rSmyg/ t"dym,fuawmh tqkdjyKcsufrSef
aeoa&GU while&JUaemufu brace {xJukd0ifNyD; statementukd tvkyfvkyfaerSmyg/ tu,f while&JUaemufu expres-sionukd pDppfvkdY FALSEqkdwJh conditionukd &vmNyDqdk&if
awmh While&JUaemufu brace {xJudk r0ifawmhbJLoop-ing[m &yfoGm;NyDawmh while Loop&JU close brace }
atmufu program statementawGudkyJ tvkyfqufvkyfoGm;awmhrSmyg/ uJ 'gqkd&ifawmhwhile loop&JU flowukd em;vnfoGm;NyDvkdYxifygw,f/ ykdNyD;em;vnfoabmaygufoGm;atmifvkdY Listing 1.11eJYa&;NyD; &Sif;jyxm;ygw,f/ avhvmMunfhyg/owdjyK&r,fhtcsufuawmh while statement&JUaemufu
test expression (boolean expression)rSm semicolon (;)
ryg&Sd&ygbl;/ uJ pwif avhvmMuygpkdY/
Listing 1.1Listing 1.1Listing 1.1Listing 1.1Listing 1.111111 Demonstration the while Loop1. class WhileClass{2. public static void main (String args
[]){3. int i=0;4. while (i
-
8/3/2019 JAVA Developer Guide Www.nyinaymin
12/225
uGefysLwm*sme,f azazmf0g&Dv? 2005 ckESpff
uGefysLwmoifcef;pm
170
conditionukd &NyD;awmh while&JU block brace {xJudk0ifvmNyD;awmhi = i+1;qkdwJhstatementukd tvkyfvmvkyfygw,f/ 'DtcgrSm i&JU rlvwefzkd;[m 0qkdawmh i =0+1;qkdwJh tajzudk &vmNyD;awmh vkdif;eHygwf 6 rSm a&;
xm;wJh print statementukd tvkyfoGm;vkyfNyD;awmhvalue of i=1qkdwJhtajzudk vmjywmyg/ NyD;wJh whilestatement&JU close brace}udk awGUwJhtcgrS m vkdif;
eHygwf 4 rSma&;xm;wJh while loop&JUtpukd jyefoGm;ygw,f/
4/ While Statement[m rSefaeoa&GU tvkyfqufvkyfw,fqkdawmh jyefNyD;awmhtest expressionvkyfMunhfwJhtcgrSmi[m 1jzpfaeygNyD/ 1[m 5xufi,fovm;?qkdwJhtqkdukd
pDppfwJhtcgrSm i,fygw,f/ 'Dawmhi[m 5xufi,fpOfrSm
qkdwJh brace {xJudk 0ifvmNyD;awmh i&JUwefzkd;udk 1vmNyD;awmh Addvkyfygw,f/ NyD;awmh Value of i=2qkdwJhtajzukd vmNyD; outputvmjyay;ygw,f/
5/ 'Dvk denf;eJY i[m 5xuf rBuD;rcsif; pDppfNyD;awmh valueof i=3, value of i=4, value of i=5qkdwJhtajzudk print
xkwfay;rSmyg/ 'gayr,fh i&JUwefzkd;ukd 5tjzpf printxkwfay;NyD;wJhtcgrSmawmhwhile loop&JUtpudk jyefoGm;NyD;awmh test expressionvkyfygw,f/ 'DtcgrSmawmhi&JUwefzkd;[m 5jzpfaeygNyD/ 5[m 5xufi,fovm;?
qkdwJh pDppfcsufrSm ri,fawmhbl;vkdY tajzudk xGufygw,f/'Dawmh boolean expressionrSm FALSEjzpfoGm;ygNyD/FALSE conditionukd &vmNyDqkdawmh while looping
ukd escapejzpfNyD;awmh vkdif;eHygwf 7 rSm&SdwJh main ( )function&JU close brace }ukd qif;oGm;ygNyD/ vkdif;eHygwf
8 rSm a&;xm;wJh whileClass&JU close brace }udkawGUwJhtcgrSmawmh program[m NyD;oGm;ygNyD/ WhileLoop&JU oabmw&m;ukd aoaocsmcsm em;vnfatmifvkdYtracevkyfMunfhyg/ RunvkyfNyD;awmhvnf; avhvmyg/uJ 'D programudk avhvmMunfh&if while looping&JU
control flowudk oabmaygufoGm;rSmyg/ ykdNyD;em;vnfoGm;atmifvkdY Listing 1.12eJY xyfrHNyD;awmh &Sif;jyxm;ygw,f/
avhvmMunfhygOD;/Listing 1.12Listing 1.12Listing 1.12Listing 1.12Listing 1.12 Using while statement forMore compact1. class whiletest{2. public static void main(String
args [ ]){3. int i=1;4. while (i !=6){
5. System.out.println(i);
6. i=i+2; }7. }
8. }Output135679.....Analysis
1/ 'D ListingrSm Logical operatorjzpfwJh(!=) Not equaltoqkdwJhoperatorukd tokH;jyKxm;ygw,f/ For state-mentukd a&;wJhtcgrSm nerver ending loopqkdwJhfor
(;;)a&;enf;av;udk owdjyKrdrSmyg/ 'Dwhile statementav;[mvnf; tJ'D for (;;) statementa&;enf;av;eJYcyfqifqifygyJ/ 'gayr,fh oluawmhNot equal to (!=)qkdwJh Logical operatoraMumifh infinite loopjzpfoGm;wmyg/ aoaocsmcsm avhvmMunfhyg/
2/ vkdif;eHygwf 1 rSm whiletestqkdwJh JAVA primary classwpfckudkcreatevkyfygw,f/ vkdif;eHygwf 2 rSmawmhmain( ) functionukd a&;zGJUxm;ygw,f/ tzGifh braceawGudk
rarhygapeJY/3/ vkdif;eHygwf 3 rSmawmhint i&JU programppOf wefzkd;onf
1ygvkdY aMunmygw,f/ tJ'Daemuf vkdif;eHygwf 4 rSmawmhwhile statementukd tokH;jyKNyD;awmh test expression
vkyfygw,f/ 'DtcgrSm i&JUwefzkd;onf1qkdawmh6eJYrnDpOfrSm while Loop&JU bracexJukd 0if&r,fvkdY a&;xm;wJhtwGuf brace {xJukd0ifNyD;awmh vkdif;eHygwf 5 rSmi&JUwefzkd;ukd printvkyfygw,f/ vkdif;eHygwf 6 rSmawmhi&JU rlvwefzkd;ukd 2vmaygif;ygw,f/ 'Dawmh i&JUwefzkd;
onf ,cktcgrSm 3jzpfoGm;ygNyD/ NyD;wJhtcgrSm while&JU close brace }ukd awGUwJhtcgrSm vkdif;eHygwf 4 rSma&;xm;wJh while statement&JU expressionqDudk jyefoGm;ygw,f/ tay:udk jyefwufoGm;wmaygh/
4/ 'DtcgrSm i[m 3jzpfaeygNyD/ 3[m 6eJYrnDpOfrSm whileblockxJudk jyef0ifoGm;NyD; outputukd xkwfay;ygw,f/
NyD;awmh2aygif;NyD;awmh vkdif;eHygwf 4 ukd jyefa&mufoGm;NyefygNyD/ aemufwpfBudrf testvkyfpOfrSmawmhi&JU wefzkd;onf 5 jzpfaeygNyD/ tJ'DtcgrSmvnf; while&JU block{xJudk0ifNyD;awmhstatementawGudk tvkyfvkyfNyD;awmh
tajzxkwfay;OD;rSmyg/ 'Dvkdenf;eJY Loopywf&if;eJY 1 3
-
8/3/2019 JAVA Developer Guide Www.nyinaymin
13/225
uGefysLwm*sme,f azazmf0g&Dv? 2005 ckESpff
uGefysLwmoifcef;pm
171
5 7 9 . . .tp&SdwJh r*Pef;awGudkoutputtjzpf xkwfay;aeygw,f/ Program[m owfrSwfaMunmxm;wJhdatatype
&JULimit
ukd ra&mufrcsif;never ending Loop
jzpfoGm;ygw,f/5/ bmaMumifhvJqkdawmh Logical NOTEqual to opera-
torukd tokH;jyKNyD; a&;xm;wJhi !=6vkdY a&;xm;wJhtcgrSm
rnDrcsif;vkdY ajymxm;wJhtwGufcondition[m always
TRUEjzpfaeygw,f/ Condition[m FALSEjzpfrSomvQifLoopingu &yfrSmqkdawmhi !=6qkdwJhexpres-sion[m nDp&mtaMumif;r&SdawmhLoopinguvnf;never ending LoopjzpfoGm;ygawmhw,f/ 'Dawmh con-dition[m FALSErjzpfawmhovkd &yfvnf; r&yfawmh
ygbl;/
6/ vkdif;eHygwf 7 rSm main ( ) function&JU closebrace }ukd ydwfxm;NyD;awmh vkdif;eHygwf 8 rSmawmh whiletest
qkdwJhJava primary class&JU close brace }ukd vmydwfxm;ygw,f/ 'Dae&mrSm program[m NyD;oGm;NyDqkdayr,fhtrSefwu,fawmh while condition[m FALSErjzpfawmhwhile blockxJuae xGufvkdYr&awmhwJhtwGufaMumifhmain ( ) functioneJY primary class&JU closebrace }awGudkawmif vmvkdYr&awmhygbl;/
Note:Note:Note:Note:Note:'D programukd RunvkyfNyD; ravhvmoifhygbl;/
vufeJYpm&Gufay:rSm cswGufjzpfap? xyfcgxyfcg aoaocsmcsmzwfjzpfap avhvmoifhygw,f/ Logical Operatortygt0ifoperatorsrsKd;pkHtaMumif;udk 'Doifcef;pmrwkdifcifrSm bmaMumifh ykdYcs&ovJqkdwmudk tcktcgrSm oabmaygufoGm;rSmyg/ NyD;awmh while statement&JU control flowukdodatmifListingawGukd wGufcsufjywJhtcgrSm outputawGudk&Sif;&Sif;vif;vif;jrif&atmifvkdY System.out.println ( )qkdwJhaemufwpfaMumif;udkqif;NyD;rSoutputukd xkwfay;apwJhprintcommandukd tokH;jyKxm;ygw,f/ 'gaMumifhom output
awG[m LineByLineazmfNyD; vmjywmyg/
TheTheTheTheThedo-whiledo-whiledo-whiledo-whiledo-whilestatementstatementstatementstatementstatement
JAVA LanguagerSm Loopingwpfckudk while state-mentukd tokH;jyKNyD;awmh ywfwJhtcgrSm Looping block
xJukd 0ifoifh^r0ifoifhudkLooping&JU tprSmwiftestvkyfygw,f/ TestvkyfwJhtcgrSmawmh boolean expressiontaeeJYaygh/ 'gayr,fh yxrtBudrfrSmawmh tuefYtowfr&SdvkyfcGifh
jyKNyD;awmh aemufwpfBudrfrSmrS pDppfcGifhjyKcsifw,fqkd&if do-
whilestatementudk tokH;jyKygw,f/ atmufrSm do-while
statement&JU Syntax_formukd a&;jyxm;ygw,f/ avhvmMunfhyg/
do {statement 1;statement 2;.............
}while(boolean expression);
'D syntax_formrSm a&;xm;wmudk avhvmMunfhr,f
qkd&if programtvkyfpvkyfpOfrSm tuefYtowf wm;qD;rIr&SdbJeJY while block { }xJudk 0ifapygw,f/ 'gayr,fh aemufwpfBudrf tvkyfqufvkyfcGifhjyK^rjyKudkawmh whileblock&JUtqkH;rSm testvkyfapygw,f/ 'DtcgrSm while&JU
aemufu (test expression)ukd ppfvkdufwJhtcgrSm TRUEconditionjzpfvmcJh&ifdo-while Loopukd aemufwpfBudrf
ywfcGif hjyKrSmyg/ tu,f test expression[m FALSEconditionjzpfvmcJh&ifawmhLoopingukd ywfcGifhrjyKawmhbJwhile&J UatmufrSm&SdwJh tjcm;aom program statement
awGqDudkyJ oGm;NyD; tvkyfqufvkyfawmhrSmyg/ uJ 'gqkd&ifawmh do-while statement&JU oabmw&m;udk em;vnfoabmaygufoGm;rSmyg/ Listing 1.3ukd tokH;jyKNyD;awmhdo-while statementukd &Sif;jyxm;ygw,f/ tajccHoabmw&m;
awGyg0ifwJhtwGuf aoaocsmcsm pepfwus avhvmMunfhyg/
Listing 1.13Listing 1.13Listing 1.13Listing 1.13Listing 1.13 Illustrate in do-while LoopingIn JAVA Language
1. class doWhileClass {2. public static void main (String args[ ]){
3. int i=0;4. do { System.out.println ("Value of i="
+i);5. i=i+1;6. } while (i
-
8/3/2019 JAVA Developer Guide Www.nyinaymin
14/225
uGefysLwm*sme,f azazmf0g&Dv? 2005 ckESpff
uGefysLwmoifcef;pm
172
i=0;vkdY declarevkyfygw,f/ 'Dawmh programtprSmawmh i&JUwefzkd;[m 0jzpfaeygNyD/
2/ vkdif;eHygwf 4 rSmawmh do statementukd a&;om;cJhyg
w,f/ ppcsif;rSmawmhdo&JU blockxJukd twm;tqD;r&Sd0ifvmcJhNyD; value of i=0qkdwJhoutputukd vmjyygw,f/vkdif;eHygwf 5 rSmawmh iukd 1vmaygif;ygw,f/ 'Dawmhvkdif;eHygwf 6 rSm a&;xm;wJh while (i
-
8/3/2019 JAVA Developer Guide Www.nyinaymin
15/225
uGefysLwm*sme,f azazmf0g&Dv? 2005 ckESpff
uGefysLwmoifcef;pm
173
rSmawmh int data typeukd tokH;jyKNyD;awmhi = 10;vdkYdeclarevkyfygw,f/
2/ vkdif;eHygwf 4 rSmawmh while statementukd tokH;jyKNyD;awmhi[m 100eJYnDr,f i,fr,fqkd&ifbrace { (whileblock)xJudk 0ifcGifhjyKr,fqkdNyD; a&;om;xm;ygw,f/ 100
xufi,f&ifjzpfap? nD&ifjzpfap while&JU block {xJukd0ifcGifh&Sdygw,f/ uJ 'Dtxd&NyDaemf/
3/ vkdif;eHygwf 5 rSmawmhi&JUwefzkd;xJudk10xnfhaygif;apzkdYtwGufself-assign (+=) symbolukd okH;NyD;awmh a&;o;xm;wmudk awGU&rSmyg/ uJ 'gqkd&ifawmh i&JUwefzkd;[m20jzpfoG m;NyDqkdwm odxm;&r,faemf/ vkdif ;eHygwf 6
rSmawmh if (i
-
8/3/2019 JAVA Developer Guide Www.nyinaymin
16/225
uGefysLwm*sme,f azazmf0g&Dv? 2005 ckESpff
uGefysLwmoifcef;pm
174
5. while(i
-
8/3/2019 JAVA Developer Guide Www.nyinaymin
17/225
uGefysLwm*sme,f azazmf0g&Dv? 2005 ckESpff
uGefysLwmoifcef;pm
175
methodjzpfwJhtwGuf pepfwus avhvmxm;apcsifygw,f/
Note:Note:Note:Note:Note:
'Dprogram
rSm owdjyK&rSmuawmhi[m
while
statement&JU looping blockxJudk 10taeeJY 0ifw,f/i + = 10;xnfhaygif;NyD; outputtaeeJY value of i=20vkdY
xkwfay;w,f/ aemufwpfBudrf Looping blockxJudk 0ifw,f/ i = 20taeeJYyg/ BlockxJudk a&mufwJhtcgrSm i + =10; xnfhaygif;NyD; outputukd value of i=30vkdY output
xkwfay;ygw,f/ aemufwpfBudrf Looping blockxJudk0ifwJhtcgrSm i = 30taeeJY while LoopxJukd0ifygw,f/
'DawmhLoopingxJukd0ifwJh tBudrfaygif; 3 BudrfajrmufjzpfNyD;xkH;pHtwkdif; i + = 10;qkdNyD; self-assignvkyfw,f/ Out-
putukd value of i = 40vkdY xkwfay;ygw,f/ 'g[m 3 Budrf
ajrmuf Loopingywfjcif;aemf/ 4 Budrfajrmuf LoopingxJudk0ifwJhtcgrSm awmh i&JUwefzkd;[m 40taeeJYaygh/ Loop-ingxJudk 0ifcGifh&Sdayr,fhself-assign i + =10;vkyfNyD;wJhtcg
rSm vkdif;eHygwf 7 rSma&;xm;wJh if (i = = 50) break;qkdwJhcontrol statementeJY oGm;NidNyD;awmh outputxkwfay;Edkif
jcif;r&SdbJ while Loop&JU blocktjyifbufukd ckefxGufvmNyD; program[m EndjzpfoGm;wmyg/ owdjyK&r,fh tcsufuawmh LoopingxJudk 3 Budrf0ifw,fqkdwJh tcsufygyJ/aoaocsmcsm tracevkyfMunfhyg/ awGUvmygvdrfhr,f/ break
eJY continueuGmjcm;csuf break statementudk awGUwJhtcgcontrolt& (LoopawG ikHae&if) twGif;qkH; Loopuae
tNyD;xGufoGm;ygw,f/ continue statementudk awGUwJhtcgLoop test boolean expressionokdY a&muf&SdoGm;jcif;om
jzpfygw,f/ tJ'DLogical expression
t&omLoop
udkqufywfoifh rywfoifh qkH;jzwfwmjzpfygw,f/ LoopxJutNyD;xGufoGm;wmr[kwfyg/
uJ 'gqkd&ifawmh tck oifMum;ykdYcscJhwJh control state-mentawGtaMumif;udk avhvmMunfhr,fqkd&ifawmh JAVALanguage taMumif;udk xJxJ0if0if em;vnfoGm;NyDvkdY
,kHMunfygw,f/ a&SUrSm qufvufykdYcsr,fh oifcef;pmawGuawmh chapter 1&JU indexawGjzpfwJhArraytaMumif;? Ar-rayawGudk zefwD;&if tokH;jyK&wJh new keyward&JU
taMumif;? new keywardukd tajccHNyD; ykdYcs&r,fhMemoryLeakseJY Creating objects on the free storeqkdwJh tcef;
u@ NyD;awmh JAVA Byte code&JUtaMumif;? JAVA Bytecode&JU tajccH programming Language&JU primarycodeawGjzpfwJhDecimal number, Binary number, Hexa-decimal numbers awG&JUtaMumif; NyD;awmh vkdtyf&if
qGJac:,lNyD; tokH;jyKvkdY&wJh packageawGxJu objcect-functionawG&JUtaMumif;awG&,fukd ykdYcsay;oGm;rSmyg/ 'D
oufqkdif&m indexawGNyD;&ifawmhchapter 1NyD;oGm;NyD;awmhtqifhjrifhobjectawGeJY zefwD;wJh OOP concoptsawGyg0ifwJhchapter 2ukd ykdYcsay;awmhrSmjzpfygw,f/ 'Dawmh tajccHchapter 1jzpfwJh Theories and Information of JAVA
qkdwJh tcef;udk aoaocsmcsm jyefvSefavhvmxm;yg/
uRefawmfzavmhyDuae bootbootbootbootboot vkyfvdkufwdkif;bootbootbootbootbootvkyfwJhtqifhudkausmfNyD; WindowsWindowsWindowsWindowsWindows yJwufoGm;w,f/zavmhyDraumif;vdkYvm;qdkNyD; aemuf wpfcsyfeJYajymif;Munfhvnf; 'Dtwdkif;yJjzpfaew,f/ zavmhyDdrivedrivedrivedrivedrive
vnf; aumif;w,f/ prf;NyD;NyD/ BootBootBootBootBootrwuf &ifbmrSqufvkyfvdkYr&EdkifwmaMumifhulnDygOD;/vG,fygw,f/ b,f driveeJY bootvkyfr,fqdkwm Bios settingrSmajymrxm;vdkY 'DjyemeJY
&ifqdkifae&wm/ uGefysLwmawGrSm rsm;aomtm;jzifh Adkif;&yfpfab;u uif;a0;atmif zavmhyDuaepNyD;rwufzdkY tumtuG,fjyKxm;avh&Sdw,f/ zavmhyDuaepNyD; bootwufcsif&if uGefysLwmpzGifhzGifhcsif; CMOS Setup UtilityxJa&mufatmif 0ifvdkufyg/ (zGifhzGifhcsif; delete keyudkESdyfxm;vdkufyg)/ Advance BIOS Featureudk xyfNyD;0ifvdkufyg/ NyD;&if First Boot DevicerSmFloppyudk ay;xm;vdkuf&if&NyD/ aemufydkif;rSm zavmhyDudk odyfroHk;MubJ pD'DawGeJY boot
vkyfvmMuw,f/ CD-ROMuae bootvkyfcsif&ifvnf; Floppytpm; CDROMvdkYajymif;ay;vdkufwmeJY&NyD/
-
8/3/2019 JAVA Developer Guide Www.nyinaymin
18/225
uGefysLwm*sme,frwfv? 2005 ckESpff168
uGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmoifcef;pm
1.51.51.51.51.5 Arrays of JAArrays of JAArrays of JAArrays of JAArrays of JAVVVVVAAAAA
uRefawmfhtaeeJY JAVA Developer Guideukd oifMum;ykdYcs&mrSm chapter 1ukd Basic FoundationtaeeJY tjynfhpkHqkH;? tvG,fulqkH;jzpfatmif a&;om;ykdYcsay;cJhygw,f/ JAVA&JU tajccHtkwfjrpfawGxJrSm Arrays[m rygrjzpfwJh yifrr@dKiftkwfjrpfBuD;wpfcktjzpf yg0ifygw,f/ 'Dawmh tajccHu
pNyD;awmh avhvmMuwmaygh/ JAVA[m aemufqkH;ay: Non-procedural Language, OOP Languagewpfckjzpfygw,f/
'DtcgrSm t&if LanguageawGrSm ryg0ifwJh featuresawGtrsm;BuD;yg0ifvmw,fqkdwmudkvnf; uRefawmf a&SUoifcef;pmawGrSm ykdYcsay;cJhygNyD/ JAVA Languageukd tajccHNyD;awmhSoftware Engineeringtqifhudk wufvSrf;r,fqkd&ifuRefawmfwkdYtaeeJY System Development, Internal De-sign and ProgrammingpwJh tcef;u@awGudk arhxm;vkdY
r&ygbl;/ wu,fwwfajrmufatmif oif,l&rSmyg/ (Com-
puter Sciencee,fy,fueJU NCC Diplomawufa&mufaewJh ausmif;om;awGuawmh 'D ModuleawGudk rpdrf;ygbl;)'gawGudk pepfwus rwwfajrmuf&if programmingrkd;ysHatmif a&;wwfaevnf; EkdifiHwum ExamawGukd 0ifa&mufajzqkdEkdifrSm r[kwfygbl;/
uJ 'Dawmh ArrayseJY ywfoufNyD;awmh tajccHupNyD;
awmh oif,lMu&atmif/ Arrays[m trSefwu,fuawmhdata structruetkyfpk0ifwpfckygyJ/ Data Structure (Datatype)Z,m;eJY ywfoufNyD;awmh vufeJYcswGufEkdifatmiftxd1.2 Decision, control structure and looping statement
in JAVAqkdwJhtcef;rSm oifMum;ykdYcsay;cJhygNyD/ tJ'DrSmawmhtajccHZ,m;taeeJYygyJ/ 'Dae&mrSmawmh Internal Designand ProgrammingqkdwJhModuleukd tajccHNyD;awmh Ar-raystaMumif;ukd &Sif;jyrSmyg/ uJ 'DawmhFigure 1.2 Clas-sification of data structuresukd avhvmMunfhyg/
Figure 1-2 Classification of data structures
Integer type
Real number type
Simple type Character type
Logical type
Basic data type Partial type
Enumeration type
Pointer type
Basic data structure
Array type
Structure type
Record type
Data structure Abstract data type
List structure
Problem-oriented Stack
data structure
(created using the Queue
basic data structure)
Tree structure
Hash
J AVA Deve lop er Guide
-
8/3/2019 JAVA Developer Guide Www.nyinaymin
19/225
uGefysLwm*sme,f rwfv? 2005ckESpff 169
uGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmoifcef;pm
uJ tay:rSma&;jyxm;wJhData typeykHav;ukd avhvmNyD;&if Arrays[m data structurestkyfpk0ifjzpfw,fqkdwmudkawGU&rSmyg/ Data Structures&JUatmufrSm Basic data struc-ture&JU problem-oriented data structure (created su-ing the basic data structure)qkdNyD; tkyfpkESpfpk &Sdwmudk
awGU&rSmyg/ 'Dtcg JAVA&JU FeaturesawGxJrSmawmhprob-lem-oriented data structureawGukd JAVA&JU packageclassawGxJuae qGJac:,lNyD;awmh tokH;jyKvkdY&ygw,fqkd&if
tjcm; b,f LanguageawGrSmrS ryg0ifao;wJh featuresawG yg0ifygw,fqkdwmudk vufcHEkdifrSmyg/ trSefwu,fuawmh 'D problem-oriented data structureawG[m int,float, Long, char, doublepwJhBasic data structureawGudk
tajccHNyD;rS jyefwnfaqmuf&wmyg/ JAVA LanguagerSm
awmh tcsKdUaom problem-oriented data structureawG[mpackageawGxJrSm yg0ifaeawmh qGJac:,lNyD; tokH;jyKvkdufkH
ygyJ/ tJ'DvkdygyJ Arrays[mvnf; data structuretkyfpk0ifqkdayr,fh basic data structureawGjzpfwJhint, float, Long,char, doublepwJh data typeawGudk tajccHNyD; jyefwnf
aqmuf&wmyg/ ArraysqkdwmbmvJ?uJ aoaocsmcsma&;NyD; a&;om;ykdYcsay;xm;ygw,f/ avhvmMunfhyg/
Arraysqkdwm[m multiple data itemawGudkgroupvkyfNyD; tokH;jyKcsifw,fqkd&ifarraytaeeJY zefwD;&ygw,f/olYrSm index_number&Sdygw,f/ olYtaeeJY multiple dataitemawGudkcommon_namewpfckay;ygw,f/ olY&JUaemufrSm
size specificationyg0ifygw,f/ bmaMumifhvJqkdawmh ar-rayukd aMunmwJhtcgrSm array_name&JUaemufrSm squarebracket [ ]yg0if&ygw,f/ tJ'D square bracket [ ]xJrSmrSnon-negative integerukd xnfhNyD; aMunm&ygw,f/ 'gukd
pmzwfoltaeeJY complexjzpfoGm;rSmpkd;vkdY sampletaeeJYa&;jyygr,f/
sample :sample :sample :sample :sample :int[]a=new int[5];'DykHpHa&;jcif;[m one-dimensional arrayudk tokH;jyKNyD;
aMunmxm;wmygyJ/ udef;ao&xm;wJhwefzkd;eJY wGufcsufr,fqkd&ifawmh 'Dvkd Declarevkyf&rSmyg/sample :sample :sample :sample :sample :
iiiiint[]a={22,10,18,9,27};
'D Arrayudk index_numberawGeJY Tefjy&r,fqkd&ifawmh 'DvkdawGU&rSmyg/
a[0] = 22a [11]= 10a [2] = 18a [3] = 9
a [4] = 27
Arrayukd pDpOfwJhtcgrSm index_number[m [0]uaepNyD;awmh pDpOfygw,f/ tu&m char data typeeJY aMunmr,fqkd&ifawmh 'Dvkda&;&rSmyg/String[]a={"Hello!","Kyaw Zayarlay."};
a[0] = Hello!
a[1] = Kyaw Zayar Lay.
uJ 'gqkd&ifawmh tajccH array typeukd tajccHavmufawmh em;vnfoabmaygufoGm;rSmyg/ 'Dawmh arraysrSmone-dimensional array, Two-dimensional array, Multi-
dimensionalpojzifh uGJjym;jcm;em;wmawGudk wpfykdif;pD pepfwus &Sif;jyygr,f/ aoaocsmcsm tcsdef,lNyD;awmhavhvmyg/
One-dimensional arrayOne-dimensional arrayOne-dimensional arrayOne-dimensional arrayOne-dimensional array
A one-dimensional array has a data structure in
which data is array in a Line.vkdY one-dimensional ar-ray&JU difinationukd t"dym,fzGifhqkdxm;ygw,f/ Array
[m problem-oriented data structurexJu List struc-tureeJY tenf;i,fqifygw,f/ 'gayr,fh tvkH;pkHrwlygbl;/
tvG,fajym&&ifawmh one-dimensional arrayqkdwm[mdata structureudkusevkyfNyD;awmhrS vkdif;wpfvkdif;xJrSmwifmultiple data itemawGudkgroupzGJUxm;wmqkd&if rrSm;yg
bl;/ Array-name&JUaemufrSm square bracket [ ]ukd tokH;jyKxm;NyD; Array&JU index_numberawGudk aMunmtokH;jyKygw,f/ atmufrSmazmfjyxm;wJhFigure 1-3ukd avhvmMunfhyg/
One-dimensional array&JU ykHpHygyJ/
uJ 'gqkd&ifawmhone- dimensional arraytaMumif;udktajccHawmh &avmufygNyD/ owdjyK&rSmuawmh aMunmxm;wJh data type&JUaemufu variable name&JUaemufusquare bracket [ ]xJrSm 'orudef; (float, double)udef;eJY(-) negaiveudef;awG rxnfhrdzkdYygyJ/ Square bracket [ ]
xJrSm rygzkdYyJaemf/Data type
taeeJYawmhDeclare
vkyfNyD;tokH;jyKvkdY&ygw,f/ uJ atmufrSm samplea&;jyyghr,f/&Sif;jywmudk rsufpdIyfaerSmpkd;vkdYyg/sample :sample :sample :sample :sample :float[]a={1.2,3.6,2.7};
a[0] = 1.2a[1] = 3.6
a[2] = 2.7
Java&JU arrayykHpH[m C++rSmyg0ifwJharray typeeJY qifwl
1st 2nd 3rd ..... i th .....
Element Element Element ..... Element .....
A(1) A(2) A(3) A(4)
Figure 1-3 One-dimensional arrayFigure 1-3 One-dimensional arrayFigure 1-3 One-dimensional arrayFigure 1-3 One-dimensional arrayFigure 1-3 One-dimensional array
-
8/3/2019 JAVA Developer Guide Www.nyinaymin
20/225
uGefysLwm*sme,frwfv? 2005 ckESpff170
uGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmoifcef;pm
ovkd&Sdayr,fh uGJjym;jcm;em;ygw,f/ vufawGUtaeeJY csa&;jy&&ifawmhsample :sample :sample :sample :sample : int[]a=new int[5];//Java Lan-
guageint a[5]; //C++ Language
'DtcgrSm JavarSm tokH;jyKwJh ArrayykHpH[m C++rSmtokH;jyKwJhpointer typeeJY oGm;wlaewmudk owdjyK&rSmyg/JavarSm pointer typeykHpH[m oD;oefY featurestaeeJY
ryg&Sdygbl;/ owdjyKNyD; odxm;&r,fhtcsufawGuawmhJavarSm poninter typezefwD;a&;om;jcif;eJYywfoufwJhmethodawGukd z,f&Sm;xm;jcif;yJjzpfygw,f/ Java&JU array typeykHpH[m C++u 'DvkdykHpHeJY oGm;wlaeygw,f/sample:sample:sample:sample:sample: int*a=new int[5]; //c++ pointer
type use
uJ 'gqkd&ifawmh ArrayseJYywfoufNyD;awmh aoaocsmcsm em;vnfoabmaygufoGm;avmufygNyD/ tvG,fqkH;ajym&&ifawmh Arrayqkdwm[m tvkyfwpfckudk vkyfukdifzkdYtwGuf same data typeuk d tokH;jyKNyD; multiple dataitemawGudk ykdifqkdifygw,f/ 'Dtcg 'D m ultiple data item
awGukd ukd,fpm;jyKwJhTeam_nameukd ykdifqkdifwJhwork group[m arrayygyJ/
Note :Note :Note :Note :Note : ArrayukdDeclarevkyfwJhtcgrSm uRefawmfwkdYtaeeJYC & C++ programming languagerSmvkdrsKd; aMunmvkdY
vnf;&ygw,f/ owdjyK&rSmuawmhArray[m same datatypeukd tokH;jyKygw,f/ int data typeud k tokH;jyKcJh&if
tkyfpk0if data itemawG b,favmufyJ&Sd&Sd tm;vkH;[m intdata typeyJjzpfNyD;awmh wlnDygw,f/ tu,fom mul-tiple data typeawGukdom tokH;jyKr,fqkd&if array type
r[kwfbJ Record type jzpfoGm;awmhrSmyg/ atmufrSmRecord type&JUykHpHukd OyrmtaeeJY a&;jyxm;ygw,f/ Ar-ray[m same data typeqkdwmudk txl;owdjyKyg/
uJArray&JU tajccHtaeeJY Listing 1.16ukd tokH;jyKNyD;awmh ArraytaMumif;udk vufawGUavhvmMunfh&atmif/Listing 1.16Listing 1.16Listing 1.16Listing 1.16Listing 1.16 Using one-dimensional ar-
ray in JAVA1. class BasicArray {2. public static void main (String
arg[ ]){3. int [ ]a - {1,3,5,7,9};4. for (int i=0; i
-
8/3/2019 JAVA Developer Guide Www.nyinaymin
21/225
uGefysLwm*sme,f rwfv? 2005ckESpff 171
uGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmoifcef;pm
wpfckcsif; wkd;NyD; looping blockxJukd 0ifygw,f/ vkdif;
eHygwf 7 rSmawmh System.out.println ( )qkdwJhprint
statementukd tokH;jyKNyD;awmh outputxkwfygw,f/'DtcgrSm a[0] jzpfpOfrSm output 1, a[1]jzpfpOfrSm out-put 3, a[2]jzpfpOfrSm output 5, a[3] jzpfpOfrSm output7, a[4]jzpfpOfrSm output 9qkdNyD; output ukd xkwfay;ygw,f/ i&JUwefzkd;[m 5eJYnDpOfrSmawmh loopingblockxJudk 0ifvkdYr&awmhygbl;/ i[m 5xufi,frSomvQif looping blockxJukd 0ifcGifh&rSmqkdawmh for&JU
blocktjyifukd ckefxGufNyD; vkdif;eHygwf 6 u main( )function&JU close brace }qDukd qif;vmygNyD/ NyD;awmh
Basic ArraysqkdwJh primary class&JU close brace}qDukd qufqif;vmNyD;awmh program[m NyD;oGm;ygNyD/
uJ 'Dawmh 'D Listing 1.16[m tenf;i,f complexjzpfaeEkdif&ifJavau vG,fuloGm;atmif oifhudk tultnDay;rSmyg/ JAVA&JU API (Application Programming Inter-face) method[m packageawGxJuae vkdcsifwJhmethod(or) object componentawGudk qGJac:,l tokH;jyKwJh enf;ynmygyJ/
Note :Note :Note :Note :Note : JAVA packageqkdwmuawmhC & C++ program-merawGtwGuf rpdrf;avmufygbl;/ C & C++rSm oufqkdif
&m programtvdkuf header fileawGudkdeclarevkyfNyD;vkdcsifwJhobject componentawGudk qGJac:,lNyD; tokH;cswJhenf;ynm&yfudk tokH;jyKzl; awGUzl;rSmyg/ Oyrm #includevkdY DeclarevkyfcJh&if sqrt ( ) square rootmethod, Log ( )tp&Sdojzifh ukd,fwkdif zefwD;a&;om;p&mrvkdbJ vkdcsifwJh object component methodukd qGJac:NyD;tokH;jyKwmygyJ/ JAVArSmyg0ifwJhpackageqkdwm[mvnf;'Dtwkdif;ygyJ/ C & C++ programmingrSm header fileawGukd ukd,fwkdif zefwD;a&;om;vkdY&ovkdJAVA LanguagerSmvnf; packageawGxJu object-componentawGudk
qGJac:,lNyD; tokH;csEkdifkHomru ukd,fwkdifvnf; packageawGudk zefwD;a&; om;vkdY&ygw,f/ ukd,fykdif packageawGzefwD;NyD;awmh Java. sun.comukd vSrf;NyD; ay;ykdY Develop
vkyfvkd Y &ygw,f/ trSefwu,fom tokH;0ifwJh featuresqkd&ifawmh aemufxGufvmr,fh SDK versiontopfawGrSm
ToolstopftaeeJY jznfhoGif;NyD;awmh yg0ifvmrSmyg/ 'Dtcef;rSmawmhpackageawGtaMumif;udk em;vnfatmif tokH;0ifwJh
APIav;awGukd qGJac:,lNyD; tokH;csjyygr,f/ aemufchap-terawGrSmawmh packageawGtaMumif;udk tjynfhpkHqkH;jzpfatmif ykdYcsay;rSmyg/
uJ 'Dawmh Listing 1.16rSm a&;jycJhwJh programudk
Length API methodudk tokH;jyKNyD;rS jyefa&;zGJUjyygr,f/
ArraywpfckrSmyg0ifwJh data itemta&twGufukd odcsif&if
ArrayName.Length methodukd tokH;jyKvkdY&ygw,f/ twdtusrod&wJh data itemta&twGufawGudk intputtaeeJYvufcH&r,fqkd&ifvnf; tokH;jyKvkdY&ygw,f/ SampletaeeJYt&ifa&;jyygOD;r,f/samplesamplesamplesamplesample
int[ ]a={1,3,5,7,9};for(int i=0;a.length;i++){
System.out.println(a[i]);}
Listing 1.16ukd jyef a&;xm;wJhListing 1.17ukd avhvmMunfhyg/ ArrayName. Length methodukd tokH;jyKNyD; a&;om;xm;ygw,f/
Listing 1.17Listing 1.17Listing 1.17Listing 1.17Listing 1.17 Using API to ArrayName.lengthmethod1. class APIClass {2. public static void main (String [] args){3. int [ ] a={1,3,5,7,9};4. for (int i=0; i < a.length; i++){5. System.out.println (a[i]);}6. }7. }output135
79
Analysis
1/ 'Dprogramudk compilevkyfNyD; Runvkyfr,fqkd&if&vmwJhtajz[m Listing 1.16u outputeJYtwlwlygyJ/vkdif;eHygwf 4 u for loopingywfpOfrSm a.lengthqkdNyD;
arrayName.Length methodukd qGJac:,l tokH;csvkdufygw,f/
2/ NyD;awmh vkdif;eHygwf 5 rSm print statementukd tokH;jyKNyD;awmh outputudk kdufxkwfvdkufwmyg/ 'gudk avhvmr,fqkd&if Java&JU API methodawG[m program-
mingvkyf&mrSm vG,fulapzkdY tultnDay;w,fqkdwmudkem;vnfoGm;rSmyg/ Memory & time wastejzpfjcif;rSumuG,frIay;w,fqkd&ifvnf; rrSm;ygbl;/'D arrayName.Length method[m uRefawmfhtaeeJY
JAVA Developer Guideukd ykdYcswJhtcg yxrqkH;taeeJYpwifykdYcswJh API methodygyJ/ uJ 'Dawmh aemuf Listing
-
8/3/2019 JAVA Developer Guide Www.nyinaymin
22/225
uGefysLwm*sme,frwfv? 2005 ckESpff172
uGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmoifcef;pm
awGrSm APIawGudk xnfhoGif;NyD;awmh oifMum;ykdYcsoGm;rSmjzpfygw,f/ aoaocsmcsmowdjyKNyD;awmh avhvmyg/
uJ qufvufNyD;awmh strintudk usevkyfNyD;rS textelementawGudk dimensionaltaeeJY okH;Munfh&atmif/Listing 1.18rSm a&;jyxm;ygw,f/ avhvmMunfhyg/
Listing 1.18Listing 1.18Listing 1.18Listing 1.18Listing 1.18 Using in arrayName.Length method in JAVA API1. class lengthClass{2. public static void main (String[]
args){3. String[]Hello = new string[3];4. Hello[0]="JAVA Developer Guide";5. Hello[1]="Kyaw Zayar Lay.";6. Hello[2]='IT Engineering.";7. for(int i=0; i
-
8/3/2019 JAVA Developer Guide Www.nyinaymin
23/225
uGefysLwm*sme,f rwfv? 2005ckESpff 173
uGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmoifcef;pm
Figure 1.5 How data of a two-dimensional array isFigure 1.5 How data of a two-dimensional array isFigure 1.5 How data of a two-dimensional array isFigure 1.5 How data of a two-dimensional array isFigure 1.5 How data of a two-dimensional array is
stored in a main memory unitstored in a main memory unitstored in a main memory unitstored in a main memory unitstored in a main memory unit
10. for(int i=0;i
-
8/3/2019 JAVA Developer Guide Www.nyinaymin
24/225
uGefysLwm*sme,frwfv? 2005 ckESpff174
uGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmoifcef;pm
uawmhint j udkDeclarevkyfygw,f/ txl;owdjyK&rSmuawmhloopingywfwJhtcgrSm loopingwpfckeJYwpfckikHxm;vkdY&ygw,f/ 'gayr,fh loopingawG[m crossjzwfvk dY r&ygbl;/ 'DtcsufukdawmhListing1.18rSm
omru b,f programawGrSmrqkd owdjyKNyD;awmh a&;om;yg/
xkH;pHtwkdif;ygyJ/ PackageawGxJu APImethodawGudk ,lrokH;awmh outputdkufxkwfcsifawmhvnf; forloopingeJYyJ jyefdkufxkwf&rSmyg/ tJ'gaMumifh vkdif;eHygwf
10 eJY vkdif;eHygwf 11 rSm ieJYjtwGufloopingjyefywfxm;wmaygh/ tay:rSm i[m Row,j[m columnqdkNyD;nDcJhNyD;om;qdkawmh vkdif;eHygwf 12 u output state-mentaMumifh tajz[m *Pef;wpfvkH;eJY outputxkwfNyD;
wkdif; Double quote " "ESpfckMum;u blanktuGmta0;twkdif; tenf;i,fpDjcm;NyD; ay:ygw,f/ NyD;awmh atmufwpfaMumif;rSm print commandudknew lineprintformeJY a&;xm;wJhtwGuf aemufwpfaMumif;rSmrS Row
udk kdufxkwfwmyg/5/ tvG,fajym&&ifawmh1st RowtwGuf yg0ifwJhcolumn
ta&twGufrjynfhrcsif; blockxJu xGufvkdY r&ygbl;/
NyD;oGm;rS2nd RowtwGufcolumnudk vmdkufxkwfwmyg/ 'Dvkdenf;eJYyJ Table formtwkdif; Four Row andFive columnygwJh Z,m;wpfckukd&vmwmyg/ tao;pdwf
aoaocsmcsmzwfNyD;awmhtracevkyfNyD; avhvmMunfhyg/Tow-dimensional arraytaMumif;udk em;vnf oabm
aygufoGm;&if Multi-dimensional arraytaMumif;udkqufvufNyD; avhvmMuygpdkY/
Multi-dimensionalMulti-dimensionalMulti-dimensionalMulti-dimensionalMulti-dimensional arrayarrayarrayarrayarray
Multi-dimensionalarryas suchasthree-, four-,orn-dimensional arrays can be definedvkdYvnf; tvG,f
ajym&atmifyg/ twdtust"dym,fzGifhqkdwmawmhr[kwfbl;
aemf/ tvG,fajymr,fqkd&ifawmh Array_name&JUaemufrSmsquare bracket[ ] awG xyfwkd;vmwmygyJ/ Oyrm three-
dimensionalarrayrSmqkd&ifcomprising planes, columnsand rowsqkdNyD; zGJUwnfaqmufovkdyJaygh/ Three-dimen-sional arrayudk xdef;csKyfwJhtcgrSmawmhtwo-dimensional
uk d xdef;csKyfykHeJY twlwlygyJ/ uJ 'gqkd&ifawmh three-di-mensionalarrayuae two-dimensionalarray formudk
ajymif;vJa&;zGJUxm;wJhFigure 1.6udk avhvmMunfhyg/ tvG,f
wul &Sif;vif;oGm;rSmyg/
A(1,1,1)A(1,1,1)A(1,1,1)A(1,1,1)A(1,1,1)A(1,1,2)A(1,1,2)A(1,1,2)A(1,1,2)A(1,1,2)
A(1,2,1)A(1,2,1)A(1,2,1)A(1,2,1)A(1,2,1)A(1,2,2)A(1,2,2)A(1,2,2)A(1,2,2)A(1,2,2)
A(1,3,1)A(1,3,1)A(1,3,1)A(1,3,1)A(1,3,1)A(1,3,2)A(1,3,2)A(1,3,2)A(1,3,2)A(1,3,2)
Figure 1-6 Developing a three-dimensional array intoFigure 1-6 Developing a three-dimensional array intoFigure 1-6 Developing a three-dimensional array intoFigure 1-6 Developing a three-dimensional array intoFigure 1-6 Developing a three-dimensional array into
a two-dimensional arraya two-dimensional arraya two-dimensional arraya two-dimensional arraya two-dimensional array
A(1,1,1)A(1,1,1)A(1,1,1)A(1,1,1)A(1,1,1)A(1,1,2)A(1,1,2)A(1,1,2)A(1,1,2)A(1,1,2)
A(1,2,1)A(1,2,1)A(1,2,1)A(1,2,1)A(1,2,1)A(1,2,2)A(1,2,2)A(1,2,2)A(1,2,2)A(1,2,2)
A(1,3,1)A(1,3,1)A(1,3,1)A(1,3,1)A(1,3,1)A(1,3,2)A(1,3,2)A(1,3,2)A(1,3,2)A(1,3,2)
A(2,1,1)A(2,1,1)A(2,1,1)A(2,1,1)A(2,1,1) A(2,1,2)A(2,1,2)A(2,1,2)A(2,1,2)A(2,1,2)
A(2,1,1)A(2,1,1)A(2,1,1)A(2,1,1)A(2,1,1)A(2,1,2)A(2,1,2)A(2,1,2)A(2,1,2)A(2,1,2)
A(2,2,1)A(2,2,1)A(2,2,1)A(2,2,1)A(2,2,1)A(2,2,2)A(2,2,2)A(2,2,2)A(2,2,2)A(2,2,2)
A(2,3,1)A(2,3,1)A(2,3,1)A(2,3,1)A(2,3,1)A(2,3,2)A(2,3,2)A(2,3,2)A(2,3,2)A(2,3,2)
Second planeSecond planeSecond planeSecond planeSecond plane
RowRowRowRowRowFirst planeFirst planeFirst planeFirst planeFirst plane
ColumnColumnColumnColumnColumn
PlanePlanePlanePlanePlane
One-dimensional array, two-dimensional arrayeJYMulti-dimensional arraypwJh arrayawGtaMumif;udk
tajccHusus em;vnfoabmaygufoGm;&ifArray&JU t"duuswJh methodtaMumif;ukd &Sif;jyygr,f/ uJ 'gqkd&if Ar-rays&JU programming areaawGrSm vkyfEkdifpGrf;wJh method
awGudk classifiedvkyfMunfh&atmif/ 'DtcgrSm- Static Array
- Dynamic ArraypwJh methodESpfckudk awGUjrif&rSmyg/uRefawmfhtaeeJY Java&JU ykHpHjy keywordawGtaMumif;udk
r&Sif;jy&ao;ygbl;/ 'gaMumifhkeywordawGtaMumif;udk&Sif;wJhtcgrSmyJ ,SOfwGJNyD;,SOfjyygawmhr,f/ rjynfhrpkH&Sif;vif;xm;&if trSefwu,fvkdtyfwJhtcsdefrSm oabmayguf em;vnfrSmr[kwfwJhtwGufkeywordtcef;rSm aoaocsmcsm &Sif;jy
ygr,f/ qufvufNyD;awmhArrays classxJu API methodawGudk qGJac:NyD; tokH;jyKMunfh&atmif/ Listing 1.20rSmsort( ) methodukd ac:okH;xm;ygw,f/ avhvmMunfhyg/Listing 1.20Listing 1.20Listing 1.20Listing 1.20Listing 1.20 Using Sort( ) method in JavaAPI1. import java.util.arrays;//import
java. util.*;2. class sortArray{3. public static void main(String[]
args){4. int[]a={7,18,2,6,9,1,10};5. System.out.println("\t Before
Sorting\n");
6. for(int i=0;i
-
8/3/2019 JAVA Developer Guide Www.nyinaymin
25/225
uGefysLwm*sme,f rwfv? 2005ckESpff 175
uGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmtaxGaxGuGefysLwmoifcef;pm
13. }output
BeforeJ Sorting
7 18 2 6 9 1 10AfterJ Sorting
1 2 6 7 9 10 18
Note :Note :Note :Note :Note :'DprogramrSmokH;wJharray.sort( )method[mQuick-Sort Algorithm methodukd tokH;jyKxm;ygw,f/ uRefawmfh
taeeJY Sort methodawGtaMumif;udkSort AlgorithmqkdwJhacgif;pOfi,feJY flowchart, AlgorithmeJY &Sif;jyNyD; vdktyfwJhae&mrSm Java program awGeJY xnfhoGif; &Sif;jyrSmyg/'Dae&mrSmawmh Listing 1.20rSmokH;wJh sort( ) method[mQuickSort methodukd okH;xm;w,fvkdYyJ rSwfxm;yg/Analysis
1/ 'D Listing 1.20rSm Arrays classxJu sort methodukd ,lokH;xm;ygw,f/ 'Dvkd ac:,ltokH;jyKEkdifzkdYtwGufvkdif;eHygwf 1 rSm import java.util.Arrays;qkdNyD; a&;om;xm;wmudk awGU&rSmyg/ Java&JU packageudk ac:okH;wmyg/ Package&JU t"dym,fuawmh ta&SUrSm &Sif;jycJhovkdyJC & C++u header fileawGeJY ykHpHwlygw,f/ Arraysclassudk ac:okH;csif&if vkdif;eHygwf 1 rSmyJ //Backslash
cHNyD; a&;xm;wJhcommentykHpH a&;xm;wJhimport java.util.*;vkdY ac:okH;&ifvnf; &ygw,f/ oluawmh Ar-rays classomruyJ java.util.packagewpfckvkH;ukd
ac:okH;csif&if (tjcm; class awGtygt0if) a&;om;
tokH;jyKygw,f/2/ vkdif;eHygwf 4 rSm int[ ]a={7,18,2,6,9,1,10};qkdNyD; one-
dimensional arrayudkDeclarevkyfygw,f/ vkdif;eHygwf5 rSmawmhSystem.out.println("\tBefore Sorting\n");qkdNyD; printdkufxkwfygw,f/ Escape characterjzpfwJh(\t 0.5jcm;&ef) (\n new Lineqif;&ef) ac:okH;xm;wmudkvnf; awGU&rSmyg/ t"dym,fuawmh Sortingrvkyfcif(i,fpOfBuD;vkdufrpOfcif) t&if rlv datatwdkif; dkufxkwfjyr,fayghaemf/ NyD;awmh for loopingeJY arrayukdywfNyD; dkufxkwfygw,f/ 'DtcgrSm ArrayName.length
( ) API methodukd ac:okH;xm;wmudk awGu&rSmyg/For loopingeJY block braceukdvnf; awGU&rSmyg/ in-crementtaeeJY (1wkd;wkdif;) blockxJudk jyef0ifrSmyg/
3/ 'Dawmh t&ifvkd aemufwpfaMumif;rSm Equals Sign(=)udk okH;NyD; a[i]=i;vkdY a&;p&mrvkdawmhygbl;/ uJ NyD;awmhvkdif;eHygwf 7 rSm DataawGudkfor loopingeJY dkufxkwfygw,f/ Datawpfck dkufxkwfNyD;wkdif; Double quote" "
eJY blank (white) spacejcm;ygw,f/ trSefwu,fuawmh\tudk tokH;jyKNyD;awmhjcm;vnf;&ayr,fh 'DtcsdefrSmcomplex
jzpfoGm;rSmpkd;vkdY" " Double quote
eJYyJspace
jcm;vdkufygw,f/ 'Dawmh outputtaeeJY Before Sort-ingqkdNyD; vmay:ygw,f/ tJ'D&JUatmufrSmrS7 18 2 6 91 10qkdNyD; sortrvkyf&ao;bJ vmjyrSmyg/
4/ vkdif;eHygwf 8 rSmawmhjava.util.Arrays packagexJusort( )API methodukd ,lokH;NyD;awmh i,fpOfBuD;vkduf
pDpOfygw,f/ CommenttaeeJYvnf; sortingvkdY a&;jyxm;wmudk awGU&rSmyg/ vkdif;eHygwf 9 uawmh print( )commandukd tokH;jyKNyD;awmh After SortingqkdwJh
pmom;udkvmjyzkdYtwGuf a&;xm;wmygyJ/5/ vkdif;eHygwf 10 uawmhsortingvkyfNyD;om; (i,fpOfBuD;
vdkuf)pDpOfNyD;om; Arrays&JU member dataawGukd forloopingukd tokH;jyKNyD;awmhoutputxkwfygw,f/ 'Dtcg
rSmawmhoutputukd xkwfay;zkdY brace{xJudk 0ifNyD; vkdif;eHygwf 11 rSm a&;xm;wJhprint statementudk tvkyfoGm;vkyfygw,f/ 'Dvkdenf;eJY outputawGudk dkufxkwfoGm;wm[m 1 2 6 7 9 10 18qkdwJhsortingvkyfNyD;om; dataawGukd vmjywmaygh/ Arrays&JU member data itemawGMum;rSm white spacejcm;zkdYtwGufprograma&;pOfxJu Double quote" "eJY xnhfa&;cJhvkdYqkdwmukd owdjyKrdrSmyg/
6/ vkdif;eHygwf 11 u print statement&JUtqkH;rSm forlooping&JU block braceukd vmydwfxm;wmudkvnf;
awGU&rSmyg/ vkdif;eHygwf 12 eJY vkdif;eHygwf 13 uawmhmain( ) function&JU close braceeJY primary class&JUclose brace}awGqkdwmudk owdjyKrdrSmyg/
Note :Note :Note :Note :Note : 'DprogramrSm topftqef;taeeJYuawmh JavapackageawGudk ac:okH;wmawGudkygyJ/ rSwfrdoGm;atmif ao
aocsmcsmavhvmyg/ a&SUavQmuf qufvuftokH;jyK&r,fhtoolsawGjzpfvkdYygyJ/
qufvufNyD;awmhJava LanguageeJY programawGudka&;om;wnfaqmufwJhtcgrSm API methodawGudkvnf;
ac:,ltokH;cs&if;eJY wpfzufuvnf; ukd,fykdiffunctionawGudk a&;om;NyD; tvkyfvkyfMunfhMu&atmif/ Listing 1.21u program[mqkd&if Java packageawGxJu APImethodawGudk ac:,ltokH;jyKkHomruyJ ukd,fykdif func-tionawGudk createvkyfxm;NyD; tokH;csxm;ygw,f/
(a&SYv qufvufazmfjyygrnf)ausmfaZ,smav; (uom)
-
8/3/2019 JAVA Developer Guide Www.nyinaymin
26/225
uGefysLwm*sme,f {jyDv? 2005 ckESpff168
uGefysLwmoifcef;pm
'Dae&mrSm functiontaMumif;udk oD;oefY acgif;pOftaeeJY &Sif;jyygr,f/
Function Method In JAFunction Method In JAFunction Method In JAFunction Method In JAFunction Method In JAVVVVVAAAAA
Function( )qkdwmuawmh Java Developer Guideukd avhvmaeoltaeeJY rpdrf;ygbl;/ bmvkdYajym&wmvJqkd
awmhJava&JU tajccH Listing 1.1uae pwifa&;om;ykdYcsay;cJhwJh programawGrSm yg0ifwJh main( )qkdwm[m Java&JUfunctionwpfckjzpfvkdYygyJ/ C & C++rSmvnf; twlwlygyJ/
tck a&;om;ykdYcsr,fhfunction( )awG&JUykHpHeJY main( )ykHpH[mqifwlygw,f/ tcka&;r,fh functionawGeJY main( )[m xyfwlxyfrQwlovm;qkd&ifawmh pGrf;&nftaeeJYuawmhtrsm;BuD; uGJjym;jcm;em;ygw,f/ ta&;tBuD;qkH;tcsufukdajym&&ifawmh main( ) [m ukd,fykdif&yfwnfrI&Sdygw,f/Function( )awG[m ukd,fykdif&yfwnfrIr&Sdygbl;/ main( )
[m rDSckdrIuif;r,fhkHomruygbl; main( )qkdwJh method
rygvm&if tJ'D program[m compilevkyfEkdifpGrf;awmifr&Sdawmhygbl;/ NyD;awmhfunctionawG b,favmufyJa&;xm;ayr,fh program compilevkyfNyD; RunNyDqkdwmeJY main( )methodukd awGUatmif&SmNyD; tJ'Dae&mupNyD;awmhrS com-pilevkyfygw,f/ 'Dawmhmain( )qkdwm[m programwpfck&JU
0ifaygufjzpfaewmaygh/ OyrmtaeeJYajym&&ifawmhmain( )function[m tdrfwpftdrf&JU0ifayguf (wHcg;rBuD;)eJY wlaeyg
w,f/ Function( )qkdwmuawmh tdrfxJrSm&SdwJh tcef;i,fawG (tdyfcef;^xrif;pm;cef;)eJYwlygw,f/ tdrfxJa&mufaeayr,fh tdyfcef;xJ^xrif;pm;cef;xJ 0ifcsifrS0ifrSmaygh/ 'Doabmw&m;[m function( )awG a&;cJhNyD;awmh ac:okH;csifrS okH;r,f/
rokH;csifvnf;&ygw,fqkdwJh oabmw&m;yJaygh/ uJ 'gqkd&ifmain( ) functionuawmh tdrfwHcg;rBuD;eJY wlygw,fqkdrS
awmh wHcg;rBuD;udk zGifhr0ifbJ tdrfxJudk 0ifvkdYudk r&awmhygbl;/ tdrfxJudk 0ifvkdYr&awmhbl;qkdrSawmh function( )awG
jzpfwJh tdrfcef;^xrif;pm;cef;xJudka&m 0ifvkdY&EkdifygOD;rvm;?
r&Ekdifygbl;/
uJ 'gqkd&ifawmhmain( ) functioneJY ukd,fykdifzefwD;a&;om;wJhfunction( ) methodawG uGJjym;jcm;em;wmudk oabmaygufoGm;awmhrSmyg/ C & C++eJY uGJjym;jcm;em;wmuawmhJavarSm return typeudk xnfhoGif;a&;zGJUp&mrvkdygbl;/ uJFigure 1.7ukd avhvmMunfhyg/ Function( )awG tvkyfvkyf
wJhykHpHudkDiagram
qGJjyxm;wmyg/Figure 1.7 When a program calls a function, execu-tion switches to the function and then resumes at
the line after the function call.
Main ()Main ()Main ()Main ()Main ()
{{{{{ SSSSStatement;tatement;tatement;tatement;tatement;
func1 ();func1 ();func1 ();func1 ();func1 ();
SSSSStatementtatementtatementtatementtatement
func2 ();func2 ();func2 ();func2 ();func2 ();
SSSSStatement;tatement;tatement;tatement;tatement;
func4 ();func4 ();func4 ();func4 ();func4 ();
}}}}} SSSSStatement;tatement;tatement;tatement;tatement;
ProgramProgramProgramProgramProgram
retumretumretumretumretum
func1func1func1func1func1
retum;retum;retum;retum;retum;
func4func4func4func4func4
retum;retum;retum;retum;retum;
func3func3func3func3func3
retum;retum;retum;retum;retum;
Statement
func3();
func2func2func2func2func2
>
>
0
f (k-1) X kf (k)
End
1f (k)
No
Step 1: As a preparatory step, pointers i and j must be
initialized.
- i is at the left end, that is 1.
- j is at the last position but a (7) of the pivot, that
is 6.
Step 2-1: i is mived to the right until an element
larger than the pivot is detected.
Step 2-2: J is moved to the left until an element
smaller than the pivot is detected.
Step 2-3: a (i) is exchanged with a (j).
Step 2-4: Step 2-1, 2-2 and 2-3 are repeated until
i j.
Step 2-5: a (i) is exchanged with the pivot at the right
end.
Figure 1.12 Algotrithm of the quick sort method
Moving data
Rollof
dataitem
Pivot
Rollof
dataitem
Data items
smaller than
the pivot
Data items
larger than
the pivot
Data items
smaller than 8Data items
larger than 8Pivot
(Example) 6 1 7 4 3 8 12 11 13 9
Pivot&JU b,fbuf rSm&SdwhJdata itemsawG[m i,fae
NyD;awmhpivot&JU nbufrSm&SdwhJdata itemsawG[m BuD;aewmudk awGU&ygw,f/ 'g[mqkd&if sortingvkyfr,fh data
itemsawGudk divided into two sections (division)vkyfjcif;ygyJ/ uJ 'Dtxd&NyDaemf/ uJ. . 'Dvkddata itemsawGudkgroupESpftkyfpk cGJNyD;whJtcgrSmawmhsortvkyfygw,f/ Sorting
vk yfwhJtcgrSm omref sort operation awGxuf vG,fulvsifjrefpGm oGm;Ekdifygw,f/ Figure 1.12udk avhvmMunhfyg/
Quick sort method&JU AlogrithmeJY calculation factori-alsudk a&;jyxm;ygw,f/ aoaocsmcsm avhvmMunhfyg/
-
8/3/2019 JAVA Developer Guide Www.nyinaymin
40/225
uGefysLwm*sme,f ZGefv? 2005 ckESpff 183
uGefysLwmoifcef;pm
uJ 'gqkd&if Quick sort method&JU Algorithm&JU
calculation factorialsudk em;vnf oabmaygufoGm;NyDqkd&ifawmhFigure 1.13taeeJY a&;qGJjyxm;whJQuick sort
method&JU flowchartudk avhvmMunhfyg/uJ 'gqdk&ifawmh Quick sort methodeJ Y ywfoufwhJ
Agorithm, DataawGudkcomparevkyfNyD;ae&ma&GUwhJcal-culation facterialseJY flowchartawGudk avhvmNyD;oGm;&if
awmh Java.util parkagerSm yg0ifwhJ sort ( ) methodudkusedvkyfwhJtcgrSm based on designvkyfxm;whJ Quicksort methodudk em;vnf oabmaygufoGm;rSmyg/ Quicksort methodudk Bubble sort methodvkdawmh program
a&;NyD; r&Sif;jyawmhygbl;/ PackagexJrSm yg0ifNyD;om;rkdYygyJ/'gayr,fhAlogrithm & FlowchartawGudkawmh txyfxyftcgcg avhvmyg/
uRefawmfhtaeeJY ArrayseJY ywfoufNyD;awmh 'Dtcef;rSmtjynfhpHkqH k;jzpfatmif ydkYcschJ ygw,f/ 'DtcgrSm tcsdKUaomtqifhjrifh arraysykpmawGudk &Sif;jywhJtcgrSm Algorithm& FlowchartqdkwhJ System DevelopmenteJY InternalDesignydkif;qkdif&m enf;ynmawG yg0ifvmwmudk pmzwfol
awGU&rSmyg/ 'Dawmhprogrammertqifh (tajccHupNyD;awmh)avhvmoif,lwhJtcgrSm 'Denf;ynmawGudk csefxm;chJvkd Y r&ygbl;/ 'D System DevelopmenteJY Internal Designydkif;qkdif&m methodawGuvnf; Java languagewpfckxJrSmomr[kwfygbl;/ C & C++, Ada, Java, Fortran, .....tp&Sd
ojzifh b,fLanguageawGrSmrqkd toHk;0ifygw,f/ Pro-gramwpfck&JU FlowoGm;yHkudkprogram flowcharteJY wGufcsufa&;qGJjy&NyD;awmh System DevelopmentyJjzpfjzpf Sys-tem Maintenance methodrSmyJjzpfjzpf tvkyfvkyfoGm;whJFlowudkawmhSystem FlowcharteJ Y tvkyfvkyf a&;om;jy&
ygw,f/ 'Dawmh 'DFlowchart method[m toHk;0ifw,fqkdwmudk tajccHavmufawmh oabmaygufvmavmufygNyD/'gaMumifh vHk;0 rwwfajrmuf^roifMum;bl;ao;whJ olawGupNyD;awmh wwfajrmufxm;olawGyg em;vnfoabmaygufEkdifzkdYtwGufJava&JU Sample Programi,fav;awGudk toHk;jyKNyD;awmh Algorithm statementawG a&;om;wnfaqmuf
enf; FlowchartawG a&;qGJenf;udk aoaocsmcsm avhvm Munhfyg/ tvGef toHk;0ifwhJ System DevelopmentMethodjzpfygw,f/ tvG,fwul wwfajrmufEkdifMuvdrfhr,f
vk dY ,HkMunfygw,f/ausmfaZ,smav; (uom)
Figure 10.13 Algorithm of the quick sort method
Divide
si
e-1j
a (e)PIVOT
Loop 1
i j
Loop 2
i j
or a (i) PIVOT
i + 1 i
Loop 2
Loop 3
i j
or PIVOTa (j)
j-1j
Loop 3
i : j
a (i)SAVE
a (j)SAVE
a (j)a (i)
SAVEa (j)
Loop 1
a (i)SAVE
a (e)a (i)
SAVEa (j)
return j
Divide
si
e-1j
a (e)PIVOT
Loop 1
i j
Loop 2
i j
or a (i) PIVOT
i + 1 i
Loop 2
Loop 3
i j
or PIVOTa (j)
j-1j
Loop 3
i : j
a (i)SAVE
a (j)SAVE
a (j)a (i)
SAVEa (j)
Loop 1
a (i)SAVE
a (e)a (i)
SAVEa (j)
return j
System's CLASSPATH xJrSmyJjzpfjzpf? 'grSr[kwf
C: \> &JU atmufrSm&SdwJh b,f System's CLASS-PATH atmufrSmyJ jzpfap tqifajywJh b,fSystem's CLASSPATHatmufrSmrqdk Savevkyf
NyD; ac:,l toHk;csEkdifygw,f/ C+ +&JU compiler
u 'Dtcsufudk tvG,fwul ajz&Sif;ay;Ekdifygw,f/ aemuf tvGef ta&;BuD;wJhtcsufu C & C++projectawGudk zefwD;wJhtcgrSm C: \ > System'sCLASSPATH&JUatmufrSm sub- directorywpfckudk
zefwD;NyD;awmh tJ'DHsub-folderxJrSmyJprojecttjzpfzefwD;r,fhHeader fileawG? program fileawG?icon file
awGudkCreate
vkyf&ygw,f/ Oyrmajym&&ifawmh- C:\B C5\BIN >&J U atmufrSm CalculateqdkwJh folderwpfckudk zefwD;vdkufygr,f/
'DawmhC: \BC5\ BIN \ Calculate >qkdwJhSystem's
CLASSPATH udk &&SdvmrSmyg/ tJ'Dh System'sCLASSPATH udk &&SdvmwJhtcgrSm zefwD;a&;zGJYwJhHeader fileawG? programfileawG? GUIzefwD;
rIawG Cursor-movement & icon awGudk tJ'Dhsystem's CLASSPATHxJrSmyJ (wpfenf;ajym&&if
awmhC: \B C5\ BIN\ Calculate>xJrSmyJ) vmNyD;savevkyf odrf;qnf;&ygw,f/ Program fileudk
zefwD;NyD;vkdY Run & compilevkyfwJhtcgrSm HeaderfileeJY program fileawGSystem's CLASSPATH
wpfckwnf;atmufrSm &SdaeayrJh Errorwufrvmygbl;/
'gaMumifh C & C + +e,fy,fuvmwJh programmerawGtzdkYawmh 'Down packageawG wnfaqmufwJhtcgrSm
txl;owdjyKNyD;awmh a&;zGJUMuapcsifygw,f/ LanguageESpfck
&JU oabmw&m;ud k twwfEdkifqH k; &Sif ;vif; oabmaygufem;vnfapcsifygw,f/ 'Dawmh Java&JU own packageawG
zefwD;NyD;NyDqkdawmhmain ( ) programudk wnfaqmuf&atmifvm;/ Listing 2.24taeeJY a&;zGJYxm;wJhprogram code_lineav;awGudk toHk;jyKNyD;awmhprogramudk zefwD; wnfaqmufyg/
Listing 2.24 use my own package method in JAVA
1. import calculate .Cal;2. public class testOwnPackage {
3. public statevoid main (string args [ ] )}4. cal obj = new cal ( ) ;5. double Length = 9.0 ;6. double width = 11.0;
7. public
getArea
(double L, double w)
8. {length = L; width = w;}9. System .out. printIn ("Area is" + obj Cal Area ( ) );10. }11. }output
Area is 99
Note: 'Dprogramudk a&;NyD;wJhtcgrSm xyfrHNyD;awmh owday;ygOD;r,f/ 'Dfileudk pmzwfol&JU ComputerxJu System's CLASSPATHjzpfwJh -C: \ j2sdk 1.4.1-01 >
C: \jdk 1.4 >
C: \java 2 >tp&SdwhJ pmzwfolInstrallvkyfxm;wJhJAVA Developement kit&Sd&matmufrSm save
vkyfNyD;rSyJjzpfjzpf C: \j2sdk 1.4 .1-01 /bin >&JUatmufrSmyJjzpfjzpfSavevkyfNyD;awmhrSCompilevkyf&rSmyg/ 'gudk txl;owdxm;yg/
Analysis
1/ Listing 2.24rSma&;xm;wJhprogram code -line[mpmzwfoltwGuf b,fvdkrQ complexjzpfp&m r&Sdygbl;/'g[m tvGef dk;pif;vG,fulNyD;awmh txyfxyftcgcga&;om; avhvmcJh&wJhProgram typejzpfvkdYygyJ/ vdkif;
eHygwf (1) rSm uRefawmfwdkY a&SUrSm a&;zGJYcJhwJh packagefileudkimportvkyf ac:,lygw,f/ 'DtcgrSm uRefawmf
wkdY zefwD;cJhwhJ package file[m program&JU Base
Class & objecttjzpf a&muf&S dvmwmyg/ tJ'Dhaemufvkdif;eHygwf (2) rSmawmhtest Own PackageqdkNyD;awmhPrimary Classwpfckudk zefwD;ygw,f/ tJ'Dprimary
-
8/3/2019 JAVA Developer Guide Www.nyinaymin
96/225
uGefysLwmoifcef;pm
uGefysLwm*sme,f rwfv? 2006 ckESpff 183
classxJrSmawmhpackage filetjzpf a&;om;xm;wJhCalqdkwJhClassudk objecttaeeJY ObjvdkY Name
ay;NyD ;awmh ac:,lvkdufygw,f/
2/ vkdif;eHygwf (5) eJY (6) rSmawmhlengtheJY widthwkdY&JUwefzdk;udk Declarevkyfygw,f/ Data typeudkawmhdouble data typeudk useagevkyfxm;ygw,f/
vkdif;eHygwf (7) rSmawmh getArea ( )qdkwJhfunctionav;udk a&;zGJYygw,f/ tJ'D functionrSm parameterargumentstaeeJ Y a&;om;NyD;awmh function ( )&JUbodyxJrSm assignvkyfNyD;awmh nd,lxm;ygw,f/
3/ vk dif;eHygwf (10) rSmawmh program&J U yifr bodyxJrSm yg0ifwJhdata assign valueawGudk toHk;jyKNyD;awmhpackage filetjzpfa&;om;xm;wJh ClassxJugetArea ( )qdkwJhmethodudk ac:,ltoHk;csNyD;awmh
outputxkwf ay;xm;ygw,f/ 'g[m 'DprogramrSmyg0ifwJh code-lineawG&J U oabmw&m;ygyJ/'Dae&mrSm pmzwfolbufuae Complainwufvmp&m
&Sdwmuawmh package filetjzpf oD;jcm;a&;zGJYraeawmhbJClasstjzpf zefwD;NyD;awmhrSobjecttaeeJY ac:,l toHk;cs
Ekdif&ifaum r&Ekdifbl;vm;qdkwJh tar;ygyJ/'Dtcsuf[m rwlygbl;/ Userudksupportay;wJh type
[mvnf; rwljyefygbl;/ bmaMumifhvJqdkawmhClasstaeeJYzefwD;r,f? ac:,l toHk;csr,fqkd&if 'D Classudk yifr mian( ) programuom ac:,ltoHk;csvdkY &rSmyg/ tjcm; pro-gram
uom ac:,lr,fqkd&if r&Ekdifawmhygbl;/ 'Dawmh tjcm;userawGtwGufsupportrjzpfEkdifawmhygbl;/
uJtck uRefawmfydkYcsay;wJhenf;vrf;eJYom zefwD; wnfaqmufr,fqkd&ifawmh API (Application ProgrammingInterface) methodtaeeJY jzpfwnfoGm;wmyg/ 'D APImethodud k tjcm; programawG a&;om;pOfrSm import
vkyfNyD;awmh ac:,ltoHk;csvkdY &ygw,f/ 'g[m API methodawG&J U oabmw&m;ygyJ/
Note: APImethodawGeJY ywfoufNyD;awmh 1.5 Arraysof JAVAqkdwJh tcef;u@rSm tajccHusus jynfhpHk
atmif &Sif;jyay;cJhNyD;ygNyD/ tcktcsdefrSm jyefvSef avh
vmapcsifygw,f/ API method &JU aemufxyfsupportjzpfwJh tcsufuawmh userawGtaeeJY a&SU
u programmerawG zefwD;oGm;wJhmethodawGudkrdrdpdwfBudKuffeaturesawG xyfrHjznfhpGufNyD; qifhyGm;package awG zefwD;vkdY&ygw,f/ Oyrmay;&&if-
Sample
Package A;udkProgrammer Au zefwD;ygw,f/ 'DPackage AxJrSm API methodwpfck yg0ifyg
w,f/ Package B ;udkProgrammer Bu zefwD;ygw,f/ 'Dpackage BxJrSm package AxJu API method
udk tajcjyKNyD;awmh pdwfBudKuf APImethod ( )udka&;om; zefwD;ygw,f/ 'Dpackage BxJrSm ta&SUuprogrammer Aa&;om;xm;wJhpackage AwpfckvHk;
udk importvkyfxm;ygw,f/ 'Dtcg package Budk ac:,l toHk;cs&ifpackage
Audkyg tvdktavsmufinvolvetaeeJY yg0ifvmrSmyg/
'g[m a&SUu zefwD;oGm;wJhAPI methodawGukd tajccHNyD;awmh qifhyGm; packageawGudk zefwD;wnfaqmufwJhenf;vrf;ygyJ/ 'gqkd&if tajccH package fileawG wnfaqmufzkdY
enf;vrf;udk em;vnfoabmaygufoGm;NyDjzpfwJhtwGuf xyfrHNyD;awmh avhvmEkdifatmif2.5.2 Sample Application ofJAVAqdkwJ h tcef;u@udk ydkYcsay;xm;ygw,f/ pmzwfol
twGuf JAVA Language eJY ywfoufwJh taumif;qHk;taxmuftuljzpfapEkdifr,fvdkY ,HkMunfygw,f/ uJ aoaocsmcsmav; qufvuf avhvmvdkufygOD;/
KYAWZAYAR LAY [ IT ENGINEERING ]
aus;&Gm pmMunfhwdkufrsm;udk tm; (3) tm;jzifh zGJUpnf;xlaxmif
jyefMum;a&;0ef BuD;Xme? jyefMum;a&;ESifh jynfolYqufqHa&;OD;pD;Xmeonf EdkifiHawmftBuD;tuJ\ vrf;TefcsufESifhtnD vlYpGrf;tm; t&if;
tjrpf zGHU NzdK;wdk;wufa&;udk taxmuftuljzpfap&ef? wdkif;&if;om;jynfolrsm; todynm A[kokw
-
8/3/2019 JAVA Developer Guide Www.nyinaymin
97/225
uGefysLwmoifcef;pm
uGefysLwm*sme,f {NyDv? 2006 ckESpff 169
2.5.2 SAMPLE APPLICATION OF JAVA
JAVA DEVELOPERGUIDEJAVA DEVELOPERGUIDE
uRefawmfwdkYtaeeJ Y 'Dtcef;u@rSm object & classqdkwJh tydkif;rSmudkyJ awmfawmfav; a&maxG;oGm;Ekdifygw,f/Oyrmajym&&ifawmh Access ControleJY passing Argu-ments tydkif;/ NyD;awmh ConstructoreJY Destructor
Method/ aemufInheritancepwJhClass&JU tajccH yifrfeatures awG/ 'gawGudk pmzwfoltaeeJY arhavsmhaumif;
arhavsmhaerSmyg/Interfacetydkif;rSmqkd&ifvnf; Implementing and
using Interfaceoabmw&m;/ NyD;awmh Extending andMethods Insideoabmw&m; pwmawG us,fus,fjyefYjyefY
yg0ifaeygw,f/Inner Class typeawGrSm qkd&ifvnf; Static Member,
Class, Member Class, Local Class and Anonymous
Classtp&SdwJhClass typeawGudk a&;om; toHk;cs[efawGyg0ifaeygw,f/
uJ- 'Dawmh pmzwfoltaeeJY tenf;i,fa&maxG;aumif;a&maxG;aeEkdifwJh 'Dtcef;u@rSm avhusifh&r,fhprogramtaeeJY ta&SUu oifMum;cJhwJh oabmw&m;awG tukef yg0ifaewJhStorefront Application Programudk avhvmMunfhMu
&atmifvm;/ 'g[m JAVA programmawpfa,muftwGufjynfhpHkwJh tawGYtMuHKudk &&SdapzkdY taxmuftul jzpfapEkdifvdrhfr,fvdkY ,HkMunfygw,f/ vkdtyfovdkclass & objectawGudkzefwD;NyD;awmh projectozG,f zefwD;&,lwmaMumifh aoaocsmcsm avhvm oif,lapcsifygw,f/ em;vnfatmif twwfEkdifqH k; BudK;pm;ydkYcsay;xm;ygw,f/
Creating an Online Storefront Application'Dprogram[m Application programjzpfwmaMumifh
codeawG a&;&wm rsm;jym;rI&Sdovdk wnfaqmuf zGJYpnf;rIrSmvnf; complexjzpfvmEkdifwJhtwGufMultifile programozG,f a&;om;NyD;awmh tJ'D a&;om;xm;wJhMultifile pro-gramawG pkpnf;NyD;rS Executable Programjzpfvmatmif
zefwD;Mu&rSmygyJ/ ProjectwpfckozG,f zefwD;&wmjzpfwJhtwGufprogram&JU wpfpdwfwpfa'opDudk cGJjcrf;a&;wJhtcgu pvdkY Date type, variables, MethodpwmawGudk *kwpdkuf avhvm&ygr,f/ 'DApplication projectrSm t"du
pGrf;aqmif&nftjyifencapsulationqkdwJh tcsufudkyg xnfhoGif; pOf;pm;Mu&ygr,f/ uJ 'gqkd&if oifcef;pmwpfckudk
avhvmovdkrsKd;yJ oHk;oyfMu&atmifvm;/ t"du 'D program&JU &nf&G,fcsufuawmh-
Calculating the sale price of each item depending
on how much of it is presently in stock
Sorting items according to sale price.
pwJh &nf&G,f csufawGeJY t"d u wnfaqmufwmygyJ/'g[m tajccH tMurf;zsif;tm;jzifh wnfaqmufwmvnf;yJjzpfygw,f/ pmzwfoltaeeJY vdkcsifwJhfeaturesawGudkvnf;xyfrHjznfhpGuf a&;om;vkdY &Ekdifygw,f/
Storefront ApplicationrSm yifr t"du container,classESpfcku t"du yg0ifygw,f/ tJ'guawmhItem ClasseJY Storefront ClasswdkYyJ jzpfygw,f/ tJ'DhClassESpfck[mrdrdukd,fwkdifyJ zefwD;a&;om;&r,fh classawGyg/ tJ'DhclassawGudk uRefawmfu a&;om;NyD;awmhpackagetjzpf zefwD;&,lygr,f/ 'DawmhPackage_Nametjzpf com.perfect.ecommercexJrSm OrganizedxkwfrSm jzpfygw,f/ 'gaMumifh
t&ifqHk; pmzwfol&JU System directory xJrSm tJ'D
package's classudk storevkyfzdkY directory structureudk
zefwD;zdkY vdkvmygNyD/Note: udk,fydkifown packageawG zefwD;&,lr,fqdk&if
directory structureudk zefwD;NyD ;awmh &nfnGef;&,l oHk;pGJwJhenf;udk a&SUoifcef;pmrSm aoaocsmcsmydkYcsay;cJhNyD;ygNyD/ 'g[m 'DtcsdefrSm a&maxG;apr,fh taMumif;t&m r[kwfawmhygbl;/ uJ 'DawmhpackagetwGufCLASSPATH (ClassPath)udk
zefwD;Mu&atmif/ pmzwfol&JU pufxJrSm JAVA 5DK
-
8/3/2019 JAVA Developer Guide Www.nyinaymin
98/225
uGefysLwmoifcef;pm
uGefysLwm*sme,f {NyDv? 2006 ckESpff170
1.4udk Instrallvkyfxm;&ifC: \ jdk 1.4taeeJY
wnf&SdrSmyg/'Dawmh uRefawmfwkdYtaeeJY C:\ jdk 1.4\com \prefect\
ecommerceqdkwJh System's CLASSPATHudk for pack-age in the folder listedtaeeJY zefwD;&ygr,f/
'grSomvQif uRefawmfwdkY zefwD;r,f