为什么这个输出是在java程序中出现的?

San*_*ari -2 java arrays

在此输入图像描述我将String的构造函数设为 -

class TestString {
    public static void main(String args[]) {

      int arr[]={1,5,6,8,9};

      String str3 = new String(arr,1,3);//public java.lang.String(int[], int, int);

      System.out.println(str3);
   }
}
Run Code Online (Sandbox Code Playgroud)

输出在图像中我无法理解其含义....

NPE*_*NPE 10

你已经创建了一个由三个Unicode代码点组成的字符串,U + 0005,U + 0006U + 0008,我敢打赌你的输出正好显示(它在我的机器上).

编辑您的控制台正在使用特定字体来呈现输出.显然,字体包含代码为5和6的字符的套装象形图.我认为它们一直延伸到最初的IBM PC:http://www.ascii-codes.com/