当前位置: 首页 > 面试题库 >

提示用户在一行上输入名称并将其打印为“ Last,First”

周培
2023-03-14
问题内容

在我们整个实验室中,没有人能够解决这个问题,因此我们必须做作业。我们要提示用户在一行上输入他们的名字和姓氏。主要方法应该处理所有println语句,并且应将名称打印为Last,First。

line 26 states "cannot find symbol."
line 36 states "not a statement. ';' expected.
line 39 states unreachable statement.

我已经玩了一个小时的代码,几乎已经放弃了。有什么帮助吗?

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package lab11;

import java.util.Scanner;

/**
 *
 * @author xxxxxx
 */
public class Lab11 {
    public static void main(String[] args) {
        System.out.println("Enter your name: ");
        Scanner user_input=new Scanner(System.in);

        changeNameFormat();
        System.out.println(lastName+", " + firstName);

        System.out.println("Enter a word. ");
        palindrome();
    }

    public static String changeNameFormat() {
        String firstName, lastName;
        firstName, lastName = user_input.nextLine;
        return lastName;
        return firstName;
    }

问题答案:

这是您需要执行的步骤列表:

获取输入[将是示例:“约翰·史密斯”]

分成两部分[有几种方法可以执行此操作]

firstName = input.substring(0, input.indexOf(" "));
lastName = input.substring(input.indexOf(" ")+1, input.length());

substring()返回字符串的一部分。

indexOf()在字符串中查找特定字符。

它需要一个开始值和一个结束值。

在这种情况下,我们从头开始,到找到空间时结束。

为了获得姓氏,我们从找到空格的地方开始,到字符串的末尾结束。

您还可以将其与.trim()方法结合使用,该方法从字符串的开头/结尾删除空格。

最后,我们返回串联的值:

return lastName + ", " + firstName;

完整的代码:

package lab11;
import java.util.Scanner;
public class Lab11 {
    public static Scanner user_input;
    public static void main(String[] args) {
        user_input = new Scanner(System.in);
        System.out.print("Enter your name: ");
        System.out.println(changeNameFormat(user_input.nextLine()));
    }
    public static String changeNameFormat(String input) { //Pass a name
        String firstName, lastName;
        firstName = input.substring(0, input.indexOf(" "));
        lastName = input.substring(input.indexOf(" ")+1, input.length());
        return lastName + ", " + firstName;
    }
}

经过测试:http://www.compileonline.com/compile_java_online.php

最后一件事。按照您的方法命名的习惯是一个很好的约定。

由于您的名称为“ changeNameFormat()”,因此我们可能应该将其更改为我们想要更改的名称。

然后在我们的主体中,我们可以获得输入,甚至可以将其作为参数传递。



 类似资料:
  • 问题内容: 我想将循环的输出打印到同一行的屏幕上。 如何以最简单的方式针对Python 3.x进行操作 我知道在Python 2.7的末尾使用逗号来问这个问题,即print I,但是我找不到Python 3.x的解决方案。 屏幕输出。 我要打印的是: 新读者也可以访问此链接http://docs.python.org/release/3.0.1/whatsnew/3.0.html 问题答案: 来自

  • 问题内容: 我遇到一种情况(在硒测试期间),在这种情况下,用户将收到安全代码。然后,用户必须先输入安全密码,然后才能继续操作。 我不太确定如何获得用户输入的值。我浏览了硒文档,并提出了这个建议。不幸的是,它并不是很有效。 有人可以指出我正确的方向吗? 问题答案: 似乎您必须先接受并关闭提示,然后才能存储和使用该值

  • 问题内容: 我有一种情况(在selenium测试期间),在这种情况下,用户将收到安全代码。然后,用户必须先输入安全代码,然后才能继续操作。 我不太确定如何获得用户输入的值。我浏览了selenium文档,并提出了这个建议。不幸的是,它并不是很有效。 有人可以指出我正确的方向吗? 问题答案: 似乎您必须先接受并关闭提示,然后才能存储和使用该值

  • 我正在尝试编写这个程序,这样当用户输入一行文本时,他们就会得到一个图表,显示每个字母被使用了多少次。我把它分解成一个数组,但我总是得到一个错误:“counts[letters[a]=='a']++;”也就是说我不能将字符串转换为char,也不能将boolean转换为int,这取决于我把它放进去的方式。我不明白为什么不全是带电。

  • 我通过使用硒IDE创建了一个提示: 如何返回这段代码并在IDE中进一步使用它?例如将其写入特定的输入字段。 我只是希望代码等到它从提示中接收到返回值,然后使用该值将其插入到特定字段。