Com implementar l'addició de dos números a Java?

En aquest article, us presentem un concepte senzill però important que és l’addició de dos números a Java amb demostració.

En aquest article, us presentaré un concepte senzill però important que és l’addició de dos nombres a Java. Abans de seguir endavant, us suggeriria que us familiaritzeu amb 'Què és Java', les funcions de Java i com podeu instal·lar Java al vostre sistema, que podeu trobar a l'anterior? . Això us ajudarà a agafar els conceptes que vénen de forma ràpida i senzilla. Els altres blocs d’aquesta sèrie de tutorials de Java escrits per la nostra els experts tractaran tots els temes importants de Java i J2EE en profunditat,



En aquest article es tractaran les següents indicacions,



Comencem doncs,

Addició de dos números a Java

Mètode 1

Ho comprenem directament desenvolupant un programa a Java per imprimir 'Addició de dos números' a la pantalla.



Class AddTwoNumbers {public static void main (String [] args) {System.out.println ('L'addició de dos números 10 + 20 és' + (10 + 20))}}

Sortida

Sortida: afegiu dos números a Java: Edureka

Hem d’entendre això que, aquí s’afegeixen números directament, diem 10 + 20, és a dir, 30. Però el que obtenim els números de la consola. En aquest cas, els valors s’emmagatzemaran en una variable. En termes de Java, la variable de matriu String emmagatzemarà aquests números en funció del seu índex.



public class Main {public static void main (String [] args) {System.out.println ('Addició de dos números' + args [0] + '+' + args [1] + 'és' + (args [0 ] + args [1]))}}

La sortida per a això serà la que es mostra a Consola quan passem el mateix nombre que és 10 i 20.

Eh, el resultat que hem obtingut aquí no és el desitjat 30. Recordeu que String [] argumenta, cada entrada que treieu de la consola es representa a String. Per tant, aquí hem de convertir aquestes cadenes en nombres enters per calcular l’addició.

public class Main {public static void main (String [] args) {//System.out.println('Addition of two numbers '+ args [0] +' + '+ args [1] +' is '+ (args [0] + args [1])) System.out.println ('Addició de dos números' + args [0] + '+' + args [1] + 'és' + (Integer.parseInt (args [0] ) + Integer.parseInt (args [1])))}}}

Sortida

Ara el resultat desitjat és el que volem. És a dir, l’addició de 10 i 20 és de 30 després que l’hem analitzat de String a Integer.

A continuació, en aquest article sobre Addició de dos números a Java

Mètode 2

  1. Utilitzant l’operador de restes: Podem utilitzar la resta per afegir dos nombres de manera que negarà el valor negatiu i es traduirà en suma.

public class AddTwoNumbers {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 (afegir (-10, 20))}}

Ouput

30

10

A continuació, en aquest article sobre Addició de dos números a Java

Operador unari repetit

Això implica bucle while, la idea bàsica que hi ha darrere és portar el valor del primer operand a zero. I per continuar augmentant el seu segon operant corresponent amb la mateixa quantitat d'iteracions. Tingueu en compte l’exemple següent.

ordenar matriu c ++
public class HelloWorld {public static void main (String [] args) {System.out.println ('add' + add (10, 20)) System.out.println ('add' + add (-10, 20)) } public static int add (int a, int b) {//System.out.println ('--->' + a + ':' + b) while (a> 0) {//System.out.println ('while a> 0 --->' + a + ':' + b) b ++ a--} while (a<0) { //System.out.println('while a ' + a + ' : ' + b) b-- a++ } //System.out.println('return b--->'+ a +': '+ b) torna b}}

Ouput

$ javac HelloWorld.java $ java -Xmx128M -Xms16M HelloWorld afegeix 30 afegeix 10

A continuació, en aquest article sobre Addició de dos números a Java

Operador de bits i bits a Java

També podem fer l'addició de dos enters utilitzant l'operador XOR a bit i l'operador AND pot obtenir el transport. Per afegir suma a suma hem d’utilitzar un operador de desplaçament a l’esquerra signat. Com passa això? Vegem primer un exemple.

classe pública 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))} public static int addUsingBits (int a, int b) {while (b! = 0) {int carry = (a & b) a = a ^ bb = carry<< 1 } return a } }

Sortida

$ javac HelloWorld.java

$ java -Xmx128M -Xms16M HelloWorld

Addició amb + ve 30

Addició mitjançant -ve 10

Recordeu sempre que l'operació XOR s'utilitza per avaluar l'addició de dos bits. L’operació AND s’utilitza per avaluar la càrrega de dos bits. Disseccionem això, oi? Seguint els valors d’entrada, prenem a = 10 i b = 20 per a la primera condició.

Operació

Avaluació d'expressions

Equivalent binari

Valor decimal

a

10

00001010

10

b

20

00010100

20

mentre que (b! = 0)

cert

int carry = (a & b)

10 & 20

0

0

a = a ^ b

10 ^ 20

00011110

30

b = portar<< 1

0<< 1

0

0

tornar a

30

00011110

30

Ara, prenem una entrada negativa per dir -10 per a. Examinem què passa a la taula següent.Això ens deixa en bucle fins que el valor decimal de la transferència sigui negatiu.

A continuació, en aquest article sobre Addició de dos números a Java

Taula de bucle inicial

Operació

Avaluació d'expressions

Equivalent binari

Valor decimal

a

-10

11110110

-10

b

20

00010100

20

mentre que (b! = 0)

cert

int carry = (a & b)

-10 & 20

00010100

20

a = a ^ b

-10 ^ 20

11100010

-30

b = portar<< 1

20<< 1

00101000

40

Llaç 1.

Operació

Avaluació d'expressions

Equivalent binari

Valor decimal

a

-30

11100010

-30

b

40

00101000

40

mentre que (b! = 0)

cert

int carry = (a & b)

-30 & 40

00100000

32

a = a ^ b

-30 ^ 40

11001010

-54

b = portar<< 1

32<< 1

00101000

64

I així successivament & hellip fins que el bucle resulti b = 0 per brevetat, no es mostra tot el resultat aquí. Per tant, a la taula següent es representa l’últim bucle d’aquesta operació.

Operació

Avaluació d'expressions

Equivalent binari

Valor decimal

a

-2147483638

1111111111111111111111111111111110000000000000000000000000001010

-2147483638

b

-2147483648

1111111111111111111111111111111110000000000000000000000000000000

-2147483648

mentre que (b! = 0)

cert

int carry = (a & b)

-2147483638 & -2147483648

1111111111111111111111111111111110000000000000000000000000000000

-2147483648

a = a ^ b

-2147483638 ^ -2147483648

00001010

10

b = portar<< 1

-2147483648<< 1

0

android studio pas a pas

0

tornar a

10

00001010

10

Així doncs, es va calcular l’addició. Uf! tant per al pensament. Penseu només si aquest càlcul el van fer manualment els humans, principalment càlculs binaris.

A continuació, en aquest article sobre Addició de dos números a Java

Recursivitat

També podem escriure el programa anterior amb recursivitat. La part del càlcul difereix lleugerament. Tingueu en compte això per fer deures. Donaré l'extracte aquí per a la recursió i provareu de construir la vostra pròpia taula perquè sàpiga com funciona internament. A més, no és necessari embolicar tot això només amb finalitats de representació, tret que estigueu entusiasmats amb el funcionament intern aquí.

public static int addUsingRecursion (int a, int b) {if (b == 0) retorna una suma int = a ^ b int carry = (a & b)<< 1 return add(sum, carry) }

Tot això per afegir dos números a Java amb l'ús de l'operador + i sense utilitzar l'operador +. La raó per la qual optarà per qualsevol d’aquests dependrà completament de la necessitat i requisit del projecte.

No he avaluat ni provat el funcionament de l'escenari per obtenir un rendiment. Suposo que això entrarà en vigor només si esteu construint el coet i el traieu a l’espai.

He explicat només els números relacionats amb els nombres enters per breu que té el seu propi límit de memòria. Us deixo explorar més amb float, double, etc. Recordeu sempre que si supereu el valor límit dels tipus primitius, el resultat mostrarà una resposta diferent.

Consulteu el per Edureka, una empresa d'aprenentatge en línia de confiança amb una xarxa de més de 250.000 estudiants satisfets repartits per tot el món. Estem aquí per ajudar-vos en cada pas del vostre viatge, per convertir-vos en el vostre millor, proposem un pla d’estudis dissenyat per a estudiants i professionals que vulguin ser desenvolupadors de Java.