¿Cómo implementar la suma de dos números en Java?



En este artículo, le presentaremos un concepto simple pero importante que es la suma de dos números en Java con demostración.

En este artículo, voy a presentarles un concepto simple pero importante que es la suma de dos números en Java. Pero antes de seguir adelante, le sugiero que se familiarice con 'Qué es Java', las características de Java y cómo puede instalar Java en su sistema, que puede encontrar en . Esto le ayudará a captar los próximos conceptos de forma rápida y sencilla. Los otros blogs de esta serie de tutoriales de Java escritos por nuestro los expertos cubrirán todos los temas importantes de Java y J2EE en profundidad,

En este artículo se cubrirán los siguientes consejos,





Así que comencemos entonces

Suma de dos números en Java

Método 1

Comprendamos directamente desarrollando un programa en Java para imprimir 'Suma de dos números' en la pantalla.



diferencia entre chef y marioneta
Clase AddTwoNumbers {public static void main (String [] args) {System.out.println ('La suma de dos números 10 + 20 es' + (10 + 20))}}

Salida

Salida - Agregar dos números en Java - Edureka

Debemos entender esto que, aquí se suman números directamente, digamos 10 + 20 que es 30. Pero lo que obtenemos son los números de la consola. En ese caso, los valores se almacenarán en una variable. En términos de Java, la variable de matriz de cadenas almacenará esos números en función de su índice.



public class Main {public static void main (String [] args) {System.out.println ('Suma de dos números' + args [0] + '+' + args [1] + 'es' + (args [0 ] + argumentos [1]))}}

La salida para esto será como se muestra en la Consola cuando pasamos el mismo número que es 10 y 20.

Eh, el resultado que obtuvimos aquí no es el deseado 30. Recuerde String [] args, cada entrada que tome de la consola está representada en String. Entonces aquí tenemos que convertir esas cadenas en enteros para calcular la suma.

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 ('Suma de dos números' + args [0] + '+' + args [1] + 'es' + (Integer.parseInt (args [0] ) + Integer.parseInt (args [1])))}}

Salida

Ahora la salida deseada es la que queremos. Esa es la suma de 10 y 20 es 30 después de analizarlo de String a Integer.

Siguiente en este artículo sobre la adición de dos números en Java

Método 2

  1. Usando el operador de resta: Podemos usar la resta para sumar dos números de manera que niegue el valor negativo y resulte en una 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 (agregar (-10, 20))}}

Ouput

30

10

Siguiente en este artículo sobre la adición de dos números en Java

Operador unario repetido

Esto implica el ciclo while, la idea básica detrás de esto es llevar el valor del primer operando a cero. Y seguir aumentando su segundo operando correspondiente en la misma cantidad de iteraciones. Considere el siguiente ejemplo usted mismo.

public class HelloWorld {public static void main (String [] args) {System.out.println ('agregar' + agregar (10, 20)) System.out.println ('agregar' + agregar (-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) return b}}

Ouput

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

Siguiente en este artículo sobre la adición de dos números en Java

Operador Bitwise y Bitshift en Java

También podemos hacer la suma de dos enteros usando el operador XOR bit a bit y el operador AND puede obtener el acarreo. Para agregar el acarreo a la suma, necesitamos usar el operador de cambio a la izquierda firmado. ¿Cómo sucede esto? Primero veamos un ejemplo.

public class HelloWorld {public static void main (String [] args) {System.out.println ('Adición usando + ve' + addUsingBits (10, 20)) System.out.println ('Adición usando -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 } }

Salida

$ javac HelloWorld.java

$ java -Xmx128M -Xms16M HelloWorld

Suma usando + ve 30

Suma usando -ve 10

Recuerde siempre que la operación XOR se usa para evaluar la suma de dos bits. La operación AND se usa para evaluar el acarreo de dos bits. Analicemos esto, ¿de acuerdo? Siguiendo los valores de entrada, tomemos a = 10 yb = 20 para la primera condición.

Operación

Evaluación de expresión

Equivalente binario

Valor decimal

a

10

00001010

10

b

20

00010100

20

mientras (b! = 0)

cierto

int carry = (a & b)

10 & 20

0

0

a = a ^ b

10 ^ 20

00011110

30

b = llevar<< 1

0<< 1

0

0

devolver un

30

00011110

30

Ahora, tomemos una entrada negativa, digamos -10 para a. Examinemos lo que sucede en la siguiente tabla.Esto nos deja en bucle hasta que el valor decimal de acarreo llega a ser negativo.

Siguiente en este artículo sobre la adición de dos números en Java

Tabla de bucle inicial

Operación

Evaluación de expresión

Equivalente binario

Valor decimal

a

-10

11110110

-10

b

20

00010100

20

mientras (b! = 0)

cierto

int carry = (a & b)

-10 & 20

00010100

20

a = a ^ b

-10 ^ 20

11100010

-30

b = llevar<< 1

20<< 1

00101000

40

Bucle 1.

Operación

Evaluación de expresión

Equivalente binario

Valor decimal

a

-30

11100010

-30

b

40

00101000

40

mientras (b! = 0)

cierto

int carry = (a & b)

-30 & 40

00100000

32

a = a ^ b

-30 ^ 40

11001010

-54

b = llevar<< 1

32<< 1

00101000

64

Y así sucesivamente hasta que el bucle resulte ser b = 0 por brevedad, no todos los resultados se muestran aquí. Por tanto, la tabla siguiente representa el último ciclo de esta operación.

Operación

Evaluación de expresión

Equivalente binario

Valor decimal

a

-2147483638

1111111111111111111111111111111110000000000000000000000000001010

-2147483638

b

-2147483648

1111111111111111111111111111111110000000000000000000000000000000

-2147483648

mientras (b! = 0)

cierto

int carry = (a & b)

-2147483638 & -2147483648

1111111111111111111111111111111110000000000000000000000000000000

-2147483648

a = a ^ b

-2147483638 ^ -2147483648

00001010

10

b = llevar<< 1

-2147483648<< 1

0

0

devolver un

10

00001010

apache spark vs hadoop mapreduce

10

Así es como se calculó la suma. ¡Uf! tanto para el pensamiento. Solo piense si este cálculo fue realizado manualmente por humanos, principalmente cálculos binarios.

Siguiente en este artículo sobre la adición de dos números en Java

Recursividad

También podemos escribir el programa anterior usando la recursividad. La parte de cálculo difiere ligeramente, consideremos esto como tarea para usted, ¿de acuerdo? Daré el extracto aquí para la recursividad y tratará de construir su propia tabla para que sepa cómo funciona internamente. Además, no hay necesidad de asaltar todo esto que es solo con fines de representación a menos que esté entusiasmado con el funcionamiento interno aquí.

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

Todo esto fue por la suma de dos números en Java usando el operador + y sin usar el operador +. La razón para optar por cualquiera de ellos dependerá completamente de la necesidad y el requisito del proyecto.

No he evaluado ni probado el funcionamiento de ambos escenarios para llegar al rendimiento. Supongo que eso entrará en vigor solo si está construyendo el cohete y lo envía al espacio.

He explicado solo los números relacionados con Integers por brevedad, que tiene su propio límite de memoria. Te dejo explorar más a fondo usando float, double, etc. Recuerda siempre que si superas el valor límite de los tipos primitivos, el resultado mostrará una respuesta diferente.

Revisar la por Edureka, una empresa de aprendizaje en línea de confianza con una red de más de 250.000 alumnos satisfechos repartidos por todo el mundo. Estamos aquí para ayudarlo en cada paso de su viaje, para que se convierta en el mejor, creamos un plan de estudios diseñado para estudiantes y profesionales que desean ser desarrolladores de Java.