使用扫描仪时意外的行打印

时间:2017-05-13 18:14:12

标签: java

我正在使用它来练习java,并且对以下练习有疑问:

写一个名为" TheNameGame的完整程序,"用户输入名字和姓氏的地方,以及以下格式的歌曲打印出的第一个名字和最后一个名字。使用一种方法来避免冗余。

你叫什么名字?五十分 Fifty Fifty,bo-Bifty
Banana-fana fo-Fifty
费-FI-MO-Mifty
FIFTY!
Cent Cent,bo-Bent
Banana-fana fo-Fent
费-FI-MO-精神疾病
CENT!

这是我为答案写的代码:

var num=(9999999999999).toString().split("").reverse();
[3,6,7].forEach((i,o)=>num.splice(o+i,0,"."));//positions 3,6,8 (or others) from behind
num=num.reverse().join("");

这是输出:

五十分 你叫什么名字?五十分 Fifty Fifty,bo-Bifty
Banana-fana fo-Fifty
费-FI-MO-Mifty
FIFTY!
Cent Cent,bo-Bent
Banana-fana fo-Fent
费-FI-MO-精神疾病
CENT!

我的问题是;第一行(Fifty Cent)来自哪里? 提前谢谢。

3 个答案:

答案 0 :(得分:1)

我看到你正试图提问,然后得到输入。您只需在main方法中进行一些小的更改。您的主要方法应如下所示:

What is your name? Fifty Cent
Fifty Fifty, bo-Bifty
Banana-fana fo-Fifty
Fee-fi-mo-Mifty
FIFTY!
Cent Cent, bo-Bent
Banana-fana fo-Fent
Fee-fi-mo-Ment
CENT!

这将给出输出:

(-> (Caffeine/newBuilder)
      (.maximumSize 10000)
      (.build))

首先询问问题,然后接受用户的名字和姓氏。您的问题只是您的代码无序。

答案 1 :(得分:0)

  

我的问题是;第一行(Fifty Cent)来自哪里?

当您输入:

Fifty Cent

String first = scan.next();会看到FiftyString last = scan.next();阅读Cent

打印时

System.out.println("What is your name? " + first + " " + last);

它将打印:

What is your name? Fifty Cent

答案 2 :(得分:0)

  

我的问题是;第一行(Fifty Cent)来自哪里?

它不是来自任何地方。你输入它,

String first = scan.next();
String last = scan.next();

Fifty Cents停留在屏幕上。 请记住输入的值 继续留在屏幕上