首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么这段代码不允许我输入新的输入?

为什么这段代码不允许我输入新的输入?
EN

Stack Overflow用户
提问于 2015-12-19 10:54:04
回答 1查看 34关注 0票数 0

这是代码:

代码语言:javascript
复制
public class Pr3 
{
  public Pr3 ()
  {
    String x = "";
    String Line = "";
    Scanner sc = new Scanner (System.in);
    do 
    {
        System.out.println ("Please enter your sentence");
        String NewLine = sc.nextLine();
        Line = Line + " " + NewLine;
        System.out.println ("Your new Line is: " + Line); 
        System.out.println ("Do you want to enter a new sentence? Enter Y for yes and N for no");
        x = sc.next();
    } while (!"N".equals(x) && "Y".equals(x));
    exit(0);
   }
 }

这是输出:

  • 请输入你的句子
  • 夏加尔
  • 你的新生产线是:夏加尔
  • 你想输入一个新句子吗?输入Y表示是,而N输入表示no
  • 请输入你的句子
  • 你的新生产线是:夏加尔
  • 你想输入一个新句子吗?输入Y表示是,而N输入表示no
EN

回答 1

Stack Overflow用户

发布于 2015-12-19 11:01:02

变化

代码语言:javascript
复制
x = sc.next();

代码语言:javascript
复制
x = sc.nextLine();

以使用行字符的末尾。

除此之外,

代码语言:javascript
复制
Line = Line + " " + NewLine;

将新行连接到前面的所有行。我不确定这是你想要的(根据你打印的System.out.println ("Your new Line is: " + Line);)。

最后一件事:

代码语言:javascript
复制
while (!"N".equals(x) && "Y".equals(x));

是多余的。如果x等于"Y",那么它就不等于"N",因此就足以编写:

代码语言:javascript
复制
while ("Y".equals(x));
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34369871

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档