日期:2014-05-20  浏览次数:20730 次

java基础问题....菜鸟提问..
public   static   void   main(String[]   args)   {
char   ch;
try   {
System.out.println( "Please   input   a   string   end   as   '# ' ");
      do   {
ch   =   (char)System.in.read();
System.out.println( "character   "   +   ch   +   " 's   Integer   value   is: "   +   (int)ch);
System.in.skip(2);
}while(ch!   = '# ');
}   catch(IOException   e)   {
      System.err.println(e.toString());
}

}

为什么while(ch!   = '# ')里的!   =出错?
将 "! "与 "= "中间的空格去掉后就不报错了...这是书上的刊误吧..
看了下基本上都是这样的.. <java语言与面向对象程序设计>
还有System.in.skip(2)在这里是跳过回车键里的2是什么意思?是不是指第二个动作的意思呀?
还有这里抛出异常System.err.println(e.toString())
我该输入什么东西才能使这个语句能够执行呢?

------解决方案--------------------
!= 是要连在一起的
! =和 != 是两回事
是完全不同的的意思,虽然说 !空格= 完全没有意思
------解决方案--------------------
2是说你前面输入的两个字符就跟没输入一样
------解决方案--------------------
System.in.skip(2) 跳过两个字节,所以你打印出的都是跳过2个字节的情况,当打到y,后面有个z,还有回车,换行.所以最后打出来的是换行. 楼主多查api啊~
------解决方案--------------------
这个程序是这样运行的:
你启动它,然后输入一个字符,回车,
程序就会判断你是不是输入了 "# "这个字符,
如果不是则继续循环,
如果是则结束程序.

至于其它的 lss们说的很清楚了.