📜  Java程序的输出 | 31套

📅  最后修改于: 2022-05-13 01:56:11.119000             🧑  作者: Mango

Java程序的输出 | 31套

先决条件: Java的数组
1. 以下程序的输出是什么?

public class Test {
public     static void main(String[] args)
    {
        int[] arr = { 1, 2, 3, 4, 5 };
        System.out.println(arr);
    }
}

选项:
1. 1
2. 编译时错误
3. 1 2 3 4 5
4. [I@Hashcode_in_Hexadecimal
输出:

The answer is option(4)

说明:在上面的程序中,我们在一条语句中使用了声明、创建和初始化。但是在打印时,我们打印的是数组的基地址而不是完整的数组。要显示数组,需要使用循环。

2. 以下程序的输出是什么?

public
class Test {
public
    static void main(String[] args)
    {
        int b = 2147483648;
        System.out.println(b);
    }
}

选项:
1.无输出
2. 2147483648
3. 2147483647
4. 编译时错误
输出:



The answer is option(4).

说明: int 是整型数据类型的默认数据类型。这里我们将 2147483648 分配给一个字节变量,并且给定的值超出了 int 的范围。这就是为什么上面的程序会给出编译时错误,说 error: integer number too large: 2147483648。

3. 下面程序的输出是什么?

public class Test 
{
    static char ch = 59;
    public    static void main(String[] args)
    {
        System.out.println(ch);
    }
}

选项:
1.编译时错误
2. 空
3.无输出
4.;
输出:

The answer is option(4).

说明:由于静态变量的类型为 char。当我们打印它时,给定整数的 ASCII 值被打印出来。

4. 以下程序的输出是什么?

public
class Test {
public
    static void main(String[] args)
    {
        int x = 0xGeeks;
        System.out.println(x);
    }
}

选项:
1. 1
2. 编译时错误
3. 空
4. 运行时错误
输出:

The answer is option(2).

说明:这里我们尝试在 int 数据类型中以十六进制形式分配字面量。但根据规则,允许的字符是 AF,但这里我们使用的是不允许的字符。这就是为什么上面的程序会编译时报错说 error: not a statement。

5. 以下程序的输出是什么?

public
class Test {
public
    static void main(String[] args)
    {
        // we are assiging 8 byte data to 4 byte variable
        float f = 10l;
        System.out.println(f);
    }
}

选项:
1. 10
2. 编译时错误
3. 10.0
4.运行时异常
输出:

The answer is option(3).

说明:这里我们将一个 long 值分配给一个浮点变量。根据数据类型,float 为 4 字节,long 为双字节。除此之外,我们可以为 float 类型分配一个 long 值。