201671010127 2016-2017-11 从键盘读入中文字符串遇到的问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了201671010127 2016-2017-11 从键盘读入中文字符串遇到的问题相关的知识,希望对你有一定的参考价值。

  上周测试户籍管理系统时,我偶然发现了一个问题,在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);
    }

  }

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

  技术分享

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

  技术分享

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

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

  技术分享

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

  技术分享

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









以上是关于201671010127 2016-2017-11 从键盘读入中文字符串遇到的问题的主要内容,如果未能解决你的问题,请参考以下文章

201671010127 2016-2017-8 初识异常处理

201671010127 2016—2017-2 接口与抽象类

201671010127 2016—2017—2 面向对象的基本概念

201671010127 2016-2017-12 泛型程序设计之集合类

201671010127 2016—2017—2 Java学习周结

201671010127 2016—2017-2 java编程中遇到的问题