Android stdio设计一个计算器mainactivity代码
时间: 2024-05-12 19:14:38 浏览: 201
Android时写的一个计算器代码
以下是一个简单的 Android Studio 计算器应用程序的 MainActivity 代码示例:
```java
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
private Button btn0, btn1, btn2, btn3, btn4, btn5, btn6, btn7, btn8, btn9, btnAdd, btnSub, btnMul, btnDiv, btnClr, btnEql;
private TextView txtResult;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 获取UI元素
txtResult = findViewById(R.id.txtResult);
btn0 = findViewById(R.id.btn0);
btn1 = findViewById(R.id.btn1);
btn2 = findViewById(R.id.btn2);
btn3 = findViewById(R.id.btn3);
btn4 = findViewById(R.id.btn4);
btn5 = findViewById(R.id.btn5);
btn6 = findViewById(R.id.btn6);
btn7 = findViewById(R.id.btn7);
btn8 = findViewById(R.id.btn8);
btn9 = findViewById(R.id.btn9);
btnAdd = findViewById(R.id.btnAdd);
btnSub = findViewById(R.id.btnSub);
btnMul = findViewById(R.id.btnMul);
btnDiv = findViewById(R.id.btnDiv);
btnClr = findViewById(R.id.btnClr);
btnEql = findViewById(R.id.btnEql);
// 绑定按钮点击事件
btn0.setOnClickListener(this);
btn1.setOnClickListener(this);
btn2.setOnClickListener(this);
btn3.setOnClickListener(this);
btn4.setOnClickListener(this);
btn5.setOnClickListener(this);
btn6.setOnClickListener(this);
btn7.setOnClickListener(this);
btn8.setOnClickListener(this);
btn9.setOnClickListener(this);
btnAdd.setOnClickListener(this);
btnSub.setOnClickListener(this);
btnMul.setOnClickListener(this);
btnDiv.setOnClickListener(this);
btnClr.setOnClickListener(this);
btnEql.setOnClickListener(this);
}
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.btn0:
txtResult.append("0");
break;
case R.id.btn1:
txtResult.append("1");
break;
case R.id.btn2:
txtResult.append("2");
break;
case R.id.btn3:
txtResult.append("3");
break;
case R.id.btn4:
txtResult.append("4");
break;
case R.id.btn5:
txtResult.append("5");
break;
case R.id.btn6:
txtResult.append("6");
break;
case R.id.btn7:
txtResult.append("7");
break;
case R.id.btn8:
txtResult.append("8");
break;
case R.id.btn9:
txtResult.append("9");
break;
case R.id.btnAdd:
txtResult.append("+");
break;
case R.id.btnSub:
txtResult.append("-");
break;
case R.id.btnMul:
txtResult.append("*");
break;
case R.id.btnDiv:
txtResult.append("/");
break;
case R.id.btnClr:
txtResult.setText("");
break;
case R.id.btnEql:
try {
String result = eval(txtResult.getText().toString());
txtResult.setText(result);
} catch (Exception e) {
txtResult.setText("Error");
}
break;
}
}
// 计算表达式的函数
private String eval(String expr) throws Exception {
return new java.util.Scanner(expr).next();
}
}
```
此代码将在 UI 中显示一个简单的计算器,用户可以使用数字和运算符键输入算术表达式,然后按“=”按钮计算结果。
阅读全文