Android studio写一个计算器
时间: 2023-10-07 22:05:19 浏览: 97
好的,下面是一个简单的计算器实现:
1. 打开 Android Studio,并创建一个新的项目
2. 在项目中创建一个新的 Activity,并命名为“CalculatorActivity”
3. 在布局文件中添加一个 EditText,用于显示计算结果,并添加多个 Button,用于输入数字和操作符
4. 在 CalculatorActivity 中,为每个 Button 添加一个 OnClickListener,以便在用户点击时执行相应的操作
5. 在 OnClickListener 中,根据用户点击的 Button 来执行相应的操作,例如:添加数字、执行加减乘除运算、清除显示结果等
6. 最后,运行应用程序,并测试计算器的功能
下面是一个简单的示例代码,可以用作参考:
```
public class CalculatorActivity extends AppCompatActivity {
private EditText resultEditText;
private String currentNumber = "";
private String operator = "";
private double result = 0;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_calculator);
resultEditText = findViewById(R.id.resultEditText);
// Add onClickListener for each button
findViewById(R.id.button0).setOnClickListener(buttonClickListener);
findViewById(R.id.button1).setOnClickListener(buttonClickListener);
findViewById(R.id.button2).setOnClickListener(buttonClickListener);
findViewById(R.id.button3).setOnClickListener(buttonClickListener);
findViewById(R.id.button4).setOnClickListener(buttonClickListener);
findViewById(R.id.button5).setOnClickListener(buttonClickListener);
findViewById(R.id.button6).setOnClickListener(buttonClickListener);
findViewById(R.id.button7).setOnClickListener(buttonClickListener);
findViewById(R.id.button8).setOnClickListener(buttonClickListener);
findViewById(R.id.button9).setOnClickListener(buttonClickListener);
findViewById(R.id.buttonAdd).setOnClickListener(buttonClickListener);
findViewById(R.id.buttonSubtract).setOnClickListener(buttonClickListener);
findViewById(R.id.buttonMultiply).setOnClickListener(buttonClickListener);
findViewById(R.id.buttonDivide).setOnClickListener(buttonClickListener);
findViewById(R.id.buttonClear).setOnClickListener(buttonClickListener);
findViewById(R.id.buttonEquals).setOnClickListener(buttonClickListener);
}
private View.OnClickListener buttonClickListener = new View.OnClickListener() {
@Override
public void onClick(View view) {
switch (view.getId()) {
case R.id.button0:
case R.id.button1:
case R.id.button2:
case R.id.button3:
case R.id.button4:
case R.id.button5:
case R.id.button6:
case R.id.button7:
case R.id.button8:
case R.id.button9:
// Add number input to currentNumber
Button button = (Button) view;
currentNumber += button.getText().toString();
resultEditText.setText(currentNumber);
break;
case R.id.buttonAdd:
case R.id.buttonSubtract:
case R.id.buttonMultiply:
case R.id.buttonDivide:
// Save currentNumber as the first operand, and save the operator
operator = ((Button) view).getText().toString();
result = Double.parseDouble(currentNumber);
currentNumber = "";
break;
case R.id.buttonClear:
// Clear the input and result
currentNumber = "";
operator = "";
result = 0;
resultEditText.setText("");
break;
case R.id.buttonEquals:
// Execute the operation and show the result
if (operator.equals("+")) {
result += Double.parseDouble(currentNumber);
} else if (operator.equals("-")) {
result -= Double.parseDouble(currentNumber);
} else if (operator.equals("*")) {
result *= Double.parseDouble(currentNumber);
} else if (operator.equals("/")) {
result /= Double.parseDouble(currentNumber);
}
resultEditText.setText(Double.toString(result));
currentNumber = "";
operator = "";
result = 0;
break;
}
}
};
}
```
这只是一个简单的计算器实现,你可以根据需要进行扩展和优化。
阅读全文