首页 > 解决方案 > 如何根据许多不同的潜在选项检查输入,每个选项在 Java 中都有单独的输出?

问题描述

目前我正在尝试制作一个程序,该程序将要求输入元素周期表中的元素,然后输出有关该元素的一些信息。我最初的想法是为它创建一个方法,然后使用每个元素的不同信息多次调用该方法,但我现在明白为什么这不起作用了,因为如果我首先有锂的方法,它将只接受锂的输入。如果没有大量几乎相同的 if 语句,我怎么能做到这一点?我对 Java 很陌生,所以一个简单的解释如何以及为什么将不胜感激。

import java.util.Scanner;
public class PeriodicTable {

    public static void askForElement(String symbol, String name, String group, Float weight) {
        do {
            Scanner reader = new Scanner(System.in);
            String input = reader.nextLine();
            if(input.trim().equalsIgnoreCase(symbol) || input.trim().equalsIgnoreCase(name)) {
                System.out.println("Element: " + name + " (" + symbol + ")" + "\nGroup: " + group + "\nAtomic Weight: " + weight);
                break;
            } else {
                System.out.println("Please input a valid symbol or name of an element.");
                continue;
            }
        } while (true);
    }

    public static void main(String[] args) {
        // TODO Auto-generated method stub
            System.out.println("Please input the name or symbol of an element in the periodic table. ");
            askForElement("Li", "Lithium", "Alkali Metals", (float) 6.941);
            askForElement("Fe", "Iron", "Transition Metals", (float) 55.933);
    }

}

标签: javaloopsvalidationinputmethods

解决方案


推荐阅读