Android计算器代码
时间: 2024-09-30 14:03:09 浏览: 20
在Android上编写一个简单的计算器应用涉及到基本的用户界面设计、数字输入处理以及基本算术运算。这里是一个简化的示例,展示如何创建一个基本的加减乘除功能:
```java
// MainActivity.java
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity {
private EditText display;
private Button button0, button1, button2, ...; // 数字按钮和其他操作按钮如+,-,*,/
private double[] numberButtons = new double[10]; // 数字存储数组
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
display = findViewById(R.id.display);
... // 初始化数字和操作按钮,并设置点击事件处理器
button0.setOnClickListener(view -> {
if (display.getText().toString().isEmpty()) {
display.setText(String.valueOf(numberButtons[0]));
} else {
display.append(numberButtons[0]);
}
});
// 其他数字按钮的处理类似,操作按钮如+、-、*、/则需要做四则运算并更新显示
}
private void performOperation(double num1, String operation, double num2) {
switch (operation) {
case "+":
display.setText(String.valueOf(num1 + num2));
break;
case "-":
display.setText(String.valueOf(num1 - num2));
break;
case "*":
display.setText(String.valueOf(num1 * num2));
break;
case "/":
if (num2 != 0) {
display.setText(String.valueOf(num1 / num2));
} else {
display.setText("Error! Division by zero.");
}
break;
default:
display.setText("Invalid operation");
break;
}
}
// 更多按钮如等于号"=",需要将输入的所有数连同当前操作符进行计算
public void onEqualClick(View view) {
double firstNumber = Double.parseDouble(display.getText().toString());
// 这里获取之前选择的操作符,比如从一个Button得到它
String operator = ...;
// 获取第二个数(如果有的话),可能是下一个数字按钮,也可能是个操作符
double secondNumber = ...;
performOperation(firstNumber, operator, secondNumber);
}
}
```
这只是一个基础的实现,实际应用可能需要考虑更多的细节,例如错误处理、清除历史记录等。同时,为了更好的用户体验,可以采用更现代的设计模式,比如Model-View-ViewModel(MVVM)架构。
阅读全文