Sa artikulong ito, ipapakilala ko sa iyo ang isang simple ngunit mahalagang konsepto na pagdaragdag ng dalawang numero sa Java. Ngunit bago magpatuloy, iminumungkahi ko sa iyo na maging pamilyar sa 'Ano ang Java', mga tampok ng Java at paano mo mai-install ang Java sa iyong system, na maaari mong makita sa nakaraang . Tutulungan ka nitong makuha ang mga paparating na konsepto nang mabilis at madali. Ang iba pang mga blog sa seryeng ito ng tutorial sa Java na isinulat ng aming sasakupin ng mga dalubhasa ang lahat ng mahahalagang paksa ng Java at J2EE nang malalim,
Saklaw ang artikulong ito sa artikulong ito,
- Paraan 1
- Paraan 2
- Paulit-ulit na Unary Operator
- Initial Loop Table
- Bitwise At Bitshift Operator Sa Java
- Recursion
Kaya't magsimula tayo noon,
Pagdaragdag ng dalawang numero sa Java
Paraan 1
Unawain natin nang direkta sa pamamagitan ng pagbuo ng isang programa sa Java upang mai-print ang 'Pagdaragdag ng dalawang numero' sa screen.
Class AddTwoNumber {public static void main (String [] args) {System.out.println ('Ang pagdaragdag ng dalawang bilang na 10 + 20 ay' + (10 + 20))}}
Paglabas
Dapat nating maunawaan ito na, narito ang mga numero na direktang idinagdag na sabihin ang 10 + 20 na 30. Ngunit kung ano ang makukuha natin ng mga numero mula sa console. Sa kasong iyon ang mga halaga ay maiimbak sa isang variable. Sa mga tuntunin ng Java, ang variable ng String array ay mag-iimbak ng mga numerong batay sa kanilang index.
pampublikong klase Pangunahing {public static void main (String [] args) {System.out.println ('Pagdaragdag ng dalawang numero' + args [0] + '+' + args [1] + 'ay' + (args [0 ] + args [1]))}}
Ang output para dito ay ipapakita sa Console kapag pumasa kami sa parehong numero na 10 at 20.
ruby sa riles ng merkado ng trabaho
Eh, ang resulta na nakuha namin dito ay hindi ninanais 30. Tandaan String [] args, ang bawat input na kinukuha mo mula sa console ay kinakatawan sa String. Kaya narito kailangan nating i-convert ang mga Strings na iyon sa Integer upang makalkula ang karagdagan.
pampublikong klase Pangunahing {public static void main (String [] args) {//System.out.println('Addition of two number '+ args [0] +' + '+ args [1] +' ay '+ (args [0] + args [1])) System.out.println ('Pagdaragdag ng dalawang numero' + args [0] + '+' + args [1] + 'ay' + (Integer.parseInt (args [0] ) + Integer.parseInt (args [1])))}}
Paglabas
Ngayon ang nais na output ay ang nais namin. Iyon ang pagdaragdag ng 10 at 20 ay 30 pagkatapos naming mai-parse ito mula sa String hanggang Integer.
Susunod sa artikulong ito sa Pagdaragdag Ng dalawang Numero Sa Java
Paraan 2
Paggamit ng operator ng Pagbawas: Maaari naming gamitin ang pagbabawas upang magdagdag ng dalawang numero tulad na tatanggihan nito ang negatibong halaga at dumating sa gayon ay magreresulta sa karagdagan.
pampublikong klase AddTwoNumber {public static int add (int a, int b) {return a - (-b)} public static void main (String [] args) {System.out.println (add (10, 20)) System. out.println (idagdag (-10, 20))}}
Ouput
30
10
Susunod sa artikulong ito sa Pagdaragdag Ng dalawang Numero Sa Java
Paulit-ulit na Unary Operator
Nagsasangkot ito habang ang loop, ang pangunahing ideya sa likod nito ay upang dalhin ang halaga ng unang operand sa zero. At upang patuloy na madagdagan ang kaukulang pangalawang operand nito sa pamamagitan ng parehong halaga ng mga pag-ulit. Isaalang-alang ang halimbawa sa ibaba ng iyong sarili.
pampublikong klase HelloWorld {public static void main (String [] args) {System.out.println ('add' + add (10, 20)) System.out.println ('add' + add (-10, 20)) } pampublikong static int add (int a, int b) {//System.out.println ('--->' + a + ':' + b) habang (a> 0) {//System.out.println ('habang isang> 0 --->' + a + ':' + b) b ++ a--} habang (a<0) { //System.out.println('while a ' + a + ' : ' + b) b-- a++ } //System.out.println('return b--->'+ a +': '+ b) bumalik b}}
Ouput
$ javac HelloWorld.java $ java -Xmx128M -Xms16M HelloWorld magdagdag ng 30 magdagdag ng 10
Susunod sa artikulong ito sa Pagdaragdag Ng dalawang Numero Sa Java
Bitwise At Bitshift Operator Sa Java
Maaari din nating gawin ang pagdaragdag ng dalawang integer sa pamamagitan ng paggamit ng XOR na bitwise operator at dalhin ay maaaring makuha ng AT operator. Upang idagdag ang kabuuan kailangan namin upang gumamit ng naka-sign left operator ng shift. Paano ito nangyayari? Tingnan muna natin ang isang halimbawa.
pampublikong klase HelloWorld {public static void main (String [] args) {System.out.println ('Addition using + ve' + addUsingBits (10, 20)) System.out.println ('Addition using -ve' + addUsingBits ( -10, 20))} pampublikong static int addUsingBits (int a, int b) {habang (b! = 0) {int carry = (a & b) a = a ^ bb = carry<< 1 } return a } }
Paglabas
$ javac HelloWorld.java
$ java -Xmx128M -Xms16M HelloWorld
Karagdagan gamit ang + 30
Karagdagan gamit ang -ve 10
Palaging tandaan na, ang operasyon ng XOR ay ginagamit upang suriin ang pagdaragdag ng dalawang piraso. AT operasyon ay ginagamit upang suriin ang pagdala ng dalawang piraso. Paghiwalayin natin ito hindi ba? Pagpunta sa mga halaga ng pag-input kumuha tayo ng = 10 at b = 20 para sa unang kundisyon.
Pagpapatakbo | Pagsusuri sa pagpapahayag | Katumbas ng binary | Desimal na Halaga |
sa | 10 | 00001010 | 10 |
b | dalawampu | 00010100 | dalawampu |
habang (b! = 0) | totoo | ||
int carry = (a & b) | 10 & 20 | 0 | 0 |
a = a ^ b | 10 ^ 20 | 00011110 | 30 |
b = bitbit<< 1 | 0<< 1 | 0 | 0 |
ibalik a | 30 | 00011110 | 30 |
Ngayon, kumuha tayo ng isang negatibong input say -10 para sa a. Suriin natin kung ano ang nangyayari sa talahanayan sa ibaba.Pinapayagan kaming umikot hanggang sa ang negatibong halaga ng pagdala ay dumating sa negatibo.
Susunod sa artikulong ito sa Pagdaragdag Ng dalawang Numero Sa Java
Initial Loop Table
Pagpapatakbo | Pagsusuri sa pagpapahayag | Katumbas ng binary | Desimal na Halaga |
sa | -10 | 11110110 | -10 |
b | dalawampu | 00010100 | dalawampu |
habang (b! = 0) | totoo | ||
int carry = (a & b) | -10 & 20 | 00010100 | dalawampu |
a = a ^ b | -10 ^ 20 | 11100010 | -30 |
b = bitbit<< 1 | dalawampu<< 1 | 00101000 | 40 |
Loop 1.
Pagpapatakbo | Pagsusuri sa pagpapahayag | Katumbas ng binary | Desimal na Halaga |
sa | -30 | 11100010 | -30 |
b | 40 | 00101000 | 40 |
habang (b! = 0) | totoo | ||
int carry = (a & b) | -30 & 40 | 00100000 | 32 |
a = a ^ b | -30 ^ 40 | 11001010 | -54 |
b = bitbit<< 1 | 32<< 1 | 00101000 | 64 |
At iba pa & hellip hanggang sa ang loop ay naging b = 0 para sa pagiging maikli hindi lahat ng resulta ay ipinapakita rito. Kaya't sa ibaba ng talahanayan ay kumakatawan sa huling loop sa operasyong ito.
Pagpapatakbo | Pagsusuri sa pagpapahayag | Katumbas ng binary | Desimal na Halaga |
sa | -2147483638 | 11111111111111111111111111111110000000000000000000000000001010 | -2147483638 |
b ano ang printwriter sa java | -2147483648 | 1111111111111111111111111111111000000000000000000000000000000000 | -2147483648 |
habang (b! = 0) | totoo | ||
int carry = (a & b) | -2147483638 & -2147483648 | 111111111111111111111111111110000000000000000000000000000000 | -2147483648 |
a = a ^ b | -2147483638 ^ -2147483648 | 00001010 | 10 |
b = bitbit<< 1 | -2147483648<< 1 | 0 | 0 |
ibalik a | 10 | 00001010 | 10 |
Kaya't kung paano nakalkula ang karagdagan. Phew! sobrang dami ng iniisip. Isipin lamang kung ang pagkalkula na ito ay ginawa nang manu-mano ng mga tao, higit sa lahat mga kalkulasyong binary.
Susunod sa artikulong ito sa Pagdaragdag Ng dalawang Numero Sa Java
Recursion
Maaari din naming isulat ang programa sa itaas gamit ang recursion din. Ang bahagi ng pagkalkula ay naiiba bahagyang hinahayaan isaalang-alang ito para sa araling-bahay para sa iyo dapat namin? Ibibigay ko ang katas dito para sa recursion at sinubukan mong bumuo ng iyong sariling mesa upang malaman mo kung paano ito gumagana sa loob. Gayundin, hindi na kailangang i-mug ang lahat ng ito na para lamang sa representasyon na layunin maliban kung nasasabik ka tungkol sa panloob na mga pagtatrabaho dito.
pampublikong static int addUsingRecursion (int a, int b) {kung (b == 0) ibalik ang isang int = a ^ b int carry = (a & b)<< 1 return add(sum, carry) }
Ito ay para sa pagdaragdag ng dalawang numero sa Java sa paggamit ng + operator at nang hindi gumagamit ng + operator. Ang dahilan sa likod ng pagpunta para sa alinman sa mga iyon ay ganap na nakasalalay sa pangangailangan at kinakailangan ng proyekto.
Hindi ko nasuri at nasubukan ang pagtatrabaho ng parehong senaryo upang makabuo ng pagganap. Hulaan ko na magkakabisa lamang ito kung itinatayo mo ang rocket at ihinahatid sa kalawakan.
Ipinaliwanag ko lamang ang mga bilang na nauugnay sa Integers para sa kabutihan na may sariling limitasyon sa memorya. Iniwan ko sa iyo upang higit pang tuklasin ang paggamit ng float, doble, atbp Laging tandaan na kung lumagpas ka sa limitasyon na halaga ng mga primitive na uri pagkatapos ang resulta ay magpapakita ng iba't ibang sagot.
Suriin ang ni Edureka, isang pinagkakatiwalaang kumpanya sa pag-aaral sa online na may isang network na higit sa 250,000 nasiyahan na mga nag-aaral na kumalat sa buong mundo. Narito kami upang matulungan ka sa bawat hakbang sa iyong paglalakbay, para sa pagiging pinakamahusay mo, nakakakuha kami ng isang kurikulum na idinisenyo para sa mga mag-aaral at propesyonal na nais na maging isang Java Developer.