Yo - Java に戻ろうとしているので、電卓を作成することにしました。
次のように動作するとします。
1) ユーザーから文字列の形式で入力を取得します -> この入力は文字列として格納されます。例: 12+89
2) 演算子の位置に従って文字列を分割し、この操作の前にあるものはすべて整数に変換されて格納されるようにします
3) 文字列が渡されたら、値を計算します
私はこれを実際よりも複雑にしていると確信しています:p これまでのコードは次のとおりです:
// Split String, count digits in string
public static void spitStrg() {
int numDigits = 0;
int numOperators = 0;
for (int i = 0; i < input.length(); i++) {
if (Character.isDigit(input.charAt(i))) {
numDigits++;
}
else if (input.charAt(i) == '+') {
System.out.println( "Position of operator: "+i);
numOperators++;
}
}
System.out.println("Number of Digits: "+numDigits);
System.out.println("Number of Operators: "+numOperators);
}
// Create a number from cut off point
public static void createNum(int startPoint, int operatorPosition) {
String tempNum = "";
for (int j = startPoint; j < operatorPosition; j++) {
tempNum = tempNum + input.charAt(startPoint);
}
}
これを処理する方法について他に何か提案はありますか? つまり、一度に 1 つの数値を要求してから演算子を求めるか、すべてをベクトルに格納して、桁数と演算子の増加を反映しますか?