一、
P46public class Test 
{
public static void main(String[] args)
{
String tmp = "大 is the set of integers";
char ch1 = tmp.charAt(0);
char ch2 = tmp.charAt(1);
char ch3 = tmp.charAt(2);
System.out.println(tmp);
System.out.println(ch1);
System.out.println(ch2);
System.out.println(ch3);
}
}书上说,ch2不是空格,而应该是"大",为什么我显示的就是空格呢?难道是书错了?二、
P58
书中原话:
当采用命令行方式启动一个程序时,可以利用重定向将任意文件捆绑到System.in和System.out:
java MyProg < myfile.txt > output.txt
这样,就不必担心处理FileNotFoundException异常了。我看不懂java MyProg < myfile.txt > output.txt是什么意思,从没见过这种写法,求解释。

解决方案 »

  1.   

    1 以 jdk 运行结果为准。2  < myfile.txt 从 myfile.txt 读入 代替 从控制台手工输入
       > output.txt 输出重定向到 output.txt
      

  2.   

    "大 is the set of integers";
    JDK内部使用的是UTS2编码,即'大'字与i, s, 空格等占用的空间全是一样的,都是两个字节。
    所以ch2是空格
      

  3.   

    1 光看程序,我也觉得ch2是空格,ch1是大 (难道还能设置单字节和多字节识别系统)
    2 <是输入重定向,< myfile.txt 就是把System.in定向到myfile.txt,这样程序的输入由文件myfile.txt自动读取而来; >是输出重定向,> output.txt 就是把程序的输出从控制转到  output.txt
      

  4.   

    System.getProperties().store(System.out, ""); 
    看了一下系统默认编码 
    sun.jnu.encoding=xxxx
    难道第一问跟这个有关? 
      

  5.   

    第二个问题和shell中>,<的用法差不多
      

  6.   

    core java 里面用了个汉字作为示例?