String#equalsIgnoreCase(String)
最初の 4 つの文字列に使用できます: -
if (oper.equalsIgnoreCase("add") ||
oper.equalsIgnoreCase("addition") ||
oper.equals("+"))
文字列の数が増える場合はList
、 を使用したほうがよいでしょう。そのcontains
メソッドを使用します。ただし、これらの入力については、このアプローチのみに従うことができます。
これにアプローチする別の方法String#matches(String)
は、正規表現を取るメソッドを使用することです: -
if (oper.matches("add|addition|[+]")
ただし、これには正規表現は必要ありません。特に、このメソッドは、より大きな入力に対して醜くなる可能性があります。しかし、それはこの場合の方法にすぎません。したがって、どちらかを選択できます。最初のものは、最初に見るのがより明確です。
または、 を使用enum
して を保存operators
し、そのインスタンスをstring
. 作業がより簡単になります。列挙型は次のようになります。
public enum Operator {
ADD,
SUB,
MUL,
DIV;
}
必要に応じて拡張できます。ユーザー入力を取得しているため、最初にそれに基づいて適切な列挙型インスタンスを識別する必要があることに注意してください。その後、文字列ではなく、その列挙型インスタンスで作業できます。