android简易计算器
时间: 2023-10-18 10:04:39 浏览: 36
好的,以下是一个简单的 Android 计算器的示例代码,可以进行加、减、乘、除四则运算:
```java
public class MainActivity extends AppCompatActivity {
private EditText etNum1, etNum2, etResult;
private Button btnAdd, btnSubtract, btnMultiply, btnDivide;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
etNum1 = findViewById(R.id.et_num1);
etNum2 = findViewById(R.id.et_num2);
etResult = findViewById(R.id.et_result);
btnAdd = findViewById(R.id.btn_add);
btnSubtract = findViewById(R.id.btn_subtract);
btnMultiply = findViewById(R.id.btn_multiply);
btnDivide = findViewById(R.id.btn_divide);
btnAdd.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
calculate("+");
}
});
btnSubtract.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
calculate("-");
}
});
btnMultiply.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
calculate("*");
}
});
btnDivide.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
calculate("/");
}
});
}
private void calculate(String operator) {
double num1 = Double.parseDouble(etNum1.getText().toString());
double num2 = Double.parseDouble(etNum2.getText().toString());
double result = 0;
switch (operator) {
case "+":
result = num1 + num2;
break;
case "-":
result = num1 - num2;
break;
case "*":
result = num1 * num2;
break;
case "/":
if (num2 == 0) {
Toast.makeText(this, "不能除以0", Toast.LENGTH_SHORT).show();
return;
}
result = num1 / num2;
break;
}
etResult.setText(String.valueOf(result));
}
}
```
布局文件 activity_main.xml:
```xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="16dp">
<EditText
android:id="@+id/et_num1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="请输入第一个数"/>
<EditText
android:id="@+id/et_num2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="请输入第二个数"/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_marginTop="16dp">
<Button
android:id="@+id/btn_add"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="+"/>
<Button
android:id="@+id/btn_subtract"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="-"
android:layout_marginLeft="16dp"/>
<Button
android:id="@+id/btn_multiply"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="*"
android:layout_marginLeft="16dp"/>
<Button
android:id="@+id/btn_divide"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="/"
android:layout_marginLeft="16dp"/>
</LinearLayout>
<EditText
android:id="@+id/et_result"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="计算结果"/>
</LinearLayout>
```
这个简单的计算器只是一个示例,实际上需要考虑很多细节问题,例如输入的数字是否合法、是否允许输入小数点、是否支持连续运算等等。