我正在使用Java练习,并对以下练习有疑问:

编写一个名为“ TheNameGame”的完整程序,在该程序中,用户输入名字和姓氏,并在其名字,姓氏和名字之后打印以下格式的歌曲。使用一种方法来避免冗余。

你叫什么名字?五十分
五十年代,五十年代
香蕉香蕉船
快速收费
五十!
Cent Cent,bo-Bent
香蕉花粉
收费服务
CENT!

这是我为答案编写的代码:

public class TheNameGame {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        String first = scan.next();
        String last = scan.next();
        String newFirst = first.substring(1);
        String newLast = last.substring(1);

        System.out.println("What is your name? " + first + " " + last);
        playGame(first, newFirst);
        playGame(last, newLast);
    }
}

public static void playGame(String name, String nn) {
    System.out.println(name + " " + name + ", " + "bo-B" + nn);
    System.out.println("Banana-fana fo-F" + nn);
    System.out.println("Fee-fi-mo-M" + nn);
    System.out.println(name.toUpperCase() + "!");
}


这是输出:

五十分
你叫什么名字?五十分
五十年代,五十年代
香蕉香蕉船
快速收费
五十!
Cent Cent,bo-Bent
香蕉花粉
收费服务
CENT!

我的问题是;第一行(五十分)从哪里来?
先感谢您。

最佳答案

我的问题是;第一行(五十分)从哪里来?


它不是来自任何地方。您输入的时候

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


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

09-19 00:54