上周测试户籍管理系统时,我偶然发现了一个问题,在IDE下运行该程序时,如果输入为中文字符串时会遇到一些问题。下面我就以一个简单的程序来演示该问题:

  首先我先写一个从键盘读入一个中文字符串,然后输出该字符串的程序,代码如下:

  import java.util.Scanner;

  public class Demo
  {

    public static void main(String[] args)
    {
      Scanner in=new Scanner(System.in);
      String t=new String();
      System.out.println("请输入一个字符串");
      t=in.nextLine();
      System.out.println(t);
    }

  }

  接下来我先将输入法调成中文状态,截图如下:

  

  接着运行该程序,截图如下:

  

  此时在输入时会产生如上图所示的错误,会将输出的提示都改变。

  然而,当我将输入法调成英文状态时,截图如下:

  

  再次运行该程序,截图如下:

  

  此时程序错误完全没有了,我特向大家请教其中的缘由,希望各位园友指教,谢谢大家!

posted on 2017-11-05 13:02  梦想不大的小菜鸟  阅读(305)  评论(3编辑  收藏  举报