Salida de Programas Java | Conjunto 21 (Conversiones de tipo)

Requisito previo: conversiones de tipo en Java con ejemplos

1) ¿Cuál es la salida del siguiente programa?

public class Test
{
    public static void main(String[] args)
    {
        int value = 554;
        String var = (String)value;  //line 1
        String temp = "123";
        int data = (int)temp; //line 2
        System.out.println(data + var);
    }
}

a) 677
b) Error de compilación debido a la línea 1
c) Error de compilación debido a la línea 2
d) Error de compilación debido a la línea 1 y línea 2

Respuesta (d)
Explicación: Java no permite convertir de int a String ni de String a int.
 
2) ¿Cuál es la salida del siguiente programa?

public class Test
{
    public static void main(String[] args)
    {
        double data = 444.324;
        int value = data;
        System.out.println(data);
    }
}

a) 444.324
b) 444
c) Error de ejecución
d) Error de compilación

Respuesta (d)
Explicación: Java no permite la conversión de un tipo de datos más grande a un tipo de datos más pequeño, ya que es una conversión con pérdidas.
 

3) ¿Cuál es la salida del siguiente programa?

public class Test
{
    public static void main(String[] args)
    {
        double data = 444.324;
        int sum = 9;
        float value = 5.1f;
        System.out.println(data + sum + value);
          
    }
}

a) 444.32495.1
b) 456
c) 458.42399
d) 458.4

Respuesta (c)
Explicación: si uno de los operandos es largo, doble o flotante, la expresión completa se convierte en largo, doble o flotante respectivamente.
 

4) ¿Cuál es la salida del siguiente programa?

public class Test
{
    public static void main(String[] args)
    {
        byte var = 1;
        var = (byte) var * 0; //line 1
        byte data = (byte) (var * 0); //line 2
        System.out.println(var);        
    }
}

a) 0
b) Error de compilación debido a la línea 1
c) Error de compilación debido a la línea 2
d) Error de compilación debido a la línea 1 y línea 2

Respuesta (b)
Explicación: cuando se evalúan las expresiones, el tipo de datos del resultado se cambia implícitamente a un tipo de datos más grande y, por lo tanto, se debe realizar una refundición explícita como se muestra en la línea 2. Por otro lado, la línea 1 muestra un error de compilación porque la expresión en el lado derecho tiene un tipo de datos como int mientras que en el lado izquierdo es byte.
 

5) ¿Cuál es la salida del siguiente programa?

public class Test
{
    public static void main(String[] args)
    {
        System.out.println((100/25.0)*Integer.parseInt("5") + 50);
    }
}

a) Error de compilación
b) 70
c) 70.0
d) Error de tiempo de ejecución

Respuesta (c)
Explicación: si se usa un valor doble en una expresión, la salida se devuelve en formato doble en lugar de un int.

Este artículo es una contribución de Mayank Kumar . Si le gusta GeeksforGeeks y le gustaría contribuir, también puede escribir un artículo usando contribuya.geeksforgeeks.org o envíe su artículo por correo a contribuya@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.

Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *