带枚举的扫描仪,Java

Scanner with Enum, Java

我正在为 uni 做作业,却被乱七八糟的一行代码困住了。

public static void setKind(SettlementType type) {
        SettlementType t;
        t = scan.nextLine();
        setKind(t = type);

如您所见,我正在使用扫描仪接收 SettlementType,但是,IDE 一直说我需要将 SettlementType 更改为 String.我是 Java 的新手,找不到解决办法,如果有人知道,你能不能帮我解决一下?

每个 enum 都有 valueOf 方法将 String 值转换为 enum 对象。

SettlementType t = SettlementType.valueOf(scan.nextLine());

如果 enum 没有具有指定名称的常量,则可能会抛出 IllegalArgumentException 异常。