在Character.MIN_VALUE的Eclipse控制台中没有输出

时间:2016-04-03 09:13:57

标签: java eclipse

我用Java训练自己,并且遇到了第一次无法解决的问题。 我搜索了解决方案,但没有找到任何帮助。

所以我的问题是Eclipse(Version3.8.1)没有在这些行的控制台中显示输出:

System.out.println( "Char min.: " + Character.MIN.VALUE );
System.out.println( "Char max.: " + Character.MAX.VALUE );

控制台中的结果是:

Char min.:
Char max.: 

我应该更改一些属性以显示正确的输出吗?

这是我的整个代码,没什么特别的:

public class PrimDatentypen {

// primitive Datentypen - Ausgabe von Wertebereichen

public static void main(String[] args) {
    System.out.println( "Byte min.: " + Byte.MIN_VALUE );           // -128
    System.out.println( "Byte max.: " + Byte.MAX_VALUE );           // 127
    System.out.println( "Char min.: " + Character.MIN_VALUE );      // '\u0000'
    System.out.println( "Char max.: " + Character.MAX_VALUE );      // '\uFFFF'
    System.out.println( "Int min.: " + Integer.MIN_VALUE );         // -2147483648
    System.out.println( "Int max.: " + Integer.MAX_VALUE );         // 2147483647
    System.out.println( "Double min.: " + Double.MIN_VALUE );       // 4.9E-324
    System.out.println( "Double max.: " + Double.MAX_VALUE );       // 1.797...E308
}

}

非常感谢您的支持:)

2 个答案:

答案 0 :(得分:2)

Char的最小值是值为0的字符。这与表示' 0'的字符不同。 ' 0' ascii由十进制值为48的字节表示(见http://www.asciitable.com/) 值为0的字节表示' NUL'不会在控制台上输出的字符,因为没有“NUL'”的表示。事实上,ascii中的前6个字符在很大程度上被视为不可打印的字符。

所以问题的答案是否定的,你不应该做任何改变,因为你已经显示了正确的输出。

如果您编辑代码以将所有值从Character.MIN_VALUE迭代到Character.MAX_VALUE,您将看到打印的整个ascii表格,并查看前几个字符的表示方式。

e.g。

for (char i = Character.MIN_VALUE; i <= Character.MAX_VALUE; i++) {
   System.out.println(System.out.format("Decimal representation: %d: ASCII:***%c", ((int)i), ((char)i)));
} 

答案 1 :(得分:1)

尝试以下代码,您将获得正确的输出:

System.out.println("Char min.: " + (int)Character.MIN_VALUE);

System.out.println("Char max.: " + (int)Character.MAX_VALUE);