Java define los siguientes operadores aritméticos:
Operador: Significado
+ Suma
- Resta
* Multiplicación
/ División
% Módulo
++ Incremento
– Decremento
Los operadores +, -, * y / funcionan de la misma manera en Java que en cualquier otro lenguaje de cómputo (o el álgebra, si ese es el caso). Estos operadores pueden aplicarse a cualquier tipo numérico de datos y usarse en objetos de tipo char.
Aunque las acciones de los operadores aritméticos le resultan familiares a todos los lectores, existen unas cuantas situaciones especiales que requieren cierta explicación. En primer lugar, recuerde que cuando / se aplica a un entero, cualquier resto se truncará: por ejemplo, 10/3 será igual a 3 en una división entre enteros. Para obtener la fracción de la división debe usar el operador de módulo %. Este operador funciona de la misma forma en Java que en otros lenguajes: presenta el sobrante de una división entre enteros como, por ejemplo, 10%3 es 1. en Java, el % puede aplicarse a tipos enteros y punto flotante. Por lo tanto, 10.0 % 3.0 también es 1. El siguiente programa demuestra el operador de módulo.
//Demuestra el operador %.
class ModDemo {
public static void main(String args[]) {
int iresult, irest;
double dresult, drest;
iresult = 10 / 3;
irest = 10 % 3;
dresult = 10.0 / 3.0;
dresult = 10.0 % 3.0;
System.out.println(“Resultado y sobrante de 10 / 3: “ + iresult + “ “ + irest);
System.out.println(“Resultado y sobrante de 10.0 / 3.0: “ + dresult + “ “ + drest);
}
}
A continuación se muestra la salida del programa:
Resultado y sobrante de 10 / 3: 3 1
resultado y sobrante de 10.0 / 3.0: 3.33333333333333 1.0
Como verá, % presenta un sobrante 1 para ambas operaciones, de entero o de punto flotante.
Incremento y decremento
++ y – son los operadores de incremento y decremento en Java. Como verá, tienen algunas propiedades especiales que los hacen interesantes. Empecemos por revisar de manera precisa las acciones que los operadores de incremento y decremento llevan a cabo.
El operador de incremento agrega 1 a su operando y el de decremento resta 1. De ahí que,
x = x + 1;
es lo mismo que
x++;
y
x = x – 1;
es lo mismo que
--x;
Ambos operadores pueden preceder (prefijo) o seguir (sufijo) al operando. Por ejemplo,
x = x + 1;
puede escribirse como
++x; // forma de prefijo
o como
x++; // forma de sufijo
En el siguiente ejemplo, el que el incremento se aplique como prefijo o como sufijo no representa ninguna diferencia. Sin embargo, se presenta una diferencia importante cuando se usa un incremento o decremento como parte de una expresión más larga, cuando un operador de incremento o decremento precede a su operando, Java realiza la operación correspondiente antes de obtener el valor del operando con el fin de que el resto de la expresión use dicho valor. Si el operador sigue a su operando, Java obtendrá el valor del operando antes de incrementarlo o decrementarlo. Tome en cuenta lo siguiente:
x = 10;
y = ++x;
En este caso, y será 11. Sin embargo, si el código se escribe como:
x = 10;
y = x++;
entonces y será 10. en ambos casos, x aún tendrá un valor de 11; la diferencia es el momento en que ocurre. Tener la capacidad de controlar el momento en que la operación de incremento o decremento tiene lugar implica ventajas importantes.
0 comentarios:
Publicar un comentario
Tu comentario es importante