java 中扫描仪输入的字符串大写

Uppercase a string input from scanner in java

我应该使用 Java 中的扫描仪来接收 14 个字符的输入,并以大写格式输出所有字母字符。我尝试输入一些通过 Google 找到的代码,例如“str.toUpperCase(Locale.ENGLISH);”,但它告诉我无法解析 str 并且无法解析语言环境解决。当我在这里进行搜索时,我得到了大写特定字符或计算字符的结果。我只需要将特定的输入行大写。

以下是我目前的资料。我正在使用 eclipse java neon

  import java.util.Scanner;

public class MemberIDLotz {
    // Everette Lotz
    public static void main(String[] args) {
        Scanner string = new Scanner(System.in);

        // We're going to get a 14 char string from a user.
        System.out.println("Please enter in a 14 character long ID");
        String name = string.next();
        str.toUpperCase(Locale.ENGLISH);

        string.close();
    }
}

提前感谢您的帮助。

*编辑:好的,所以它不再给我错误消息,是的,我只是简单地复制并粘贴了代码。但是,当它打印出来时,它不是大写格式。我将以下内容放在 "String name =...." 之后并删除了 str.toUppercase() 行:

System.out.println(name);
name = name.toUpperCase();`

改为

name = name.toUpperCase(Locale.ENGLISH);

或更简单地说

name = name.toUpperCase();

你有没有立即大写的原因?

String name = string.next().toUpperCase()

如果你愿意,你也可以添加trim,这是一个有效的例子:

String choice;

Scanner s = new Scanner(System.in);
choice = s.nextLine().trim().toUpperCase();