用android studio'制作一个能加减乘除的计算器
时间: 2023-10-06 11:11:07 浏览: 156
好的,我可以为您提供一些指导。
首先,您需要创建一个 Android Studio 项目。然后,在 XML 文件中创建计算器的用户界面。您可以使用 LinearLayout 和 GridLayout 等布局来放置按钮和文本框等 UI 元素。
接下来,您需要编写 Java 代码来实现计算器的功能。您可以创建一个 Activity 类,并在其中处理按钮的点击事件。
以下是一个简单的示例代码,可以实现基本的加减乘除操作:
```java
public class CalculatorActivity extends AppCompatActivity implements View.OnClickListener {
private EditText resultText;
private Button button0, button1, button2, button3, button4, button5, button6, button7, button8, button9;
private Button buttonAdd, buttonSubtract, buttonMultiply, buttonDivide, buttonEqual, buttonClear;
private double num1 = 0, num2 = 0;
private boolean addFlag = false, subtractFlag = false, multiplyFlag = false, divideFlag = false;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_calculator);
resultText = findViewById(R.id.result_text);
button0 = findViewById(R.id.button_0);
button1 = findViewById(R.id.button_1);
button2 = findViewById(R.id.button_2);
button3 = findViewById(R.id.button_3);
button4 = findViewById(R.id.button_4);
button5 = findViewById(R.id.button_5);
button6 = findViewById(R.id.button_6);
button7 = findViewById(R.id.button_7);
button8 = findViewById(R.id.button_8);
button9 = findViewById(R.id.button_9);
buttonAdd = findViewById(R.id.button_add);
buttonSubtract = findViewById(R.id.button_subtract);
buttonMultiply = findViewById(R.id.button_multiply);
buttonDivide = findViewById(R.id.button_divide);
buttonEqual = findViewById(R.id.button_equal);
buttonClear = findViewById(R.id.button_clear);
button0.setOnClickListener(this);
button1.setOnClickListener(this);
button2.setOnClickListener(this);
button3.setOnClickListener(this);
button4.setOnClickListener(this);
button5.setOnClickListener(this);
button6.setOnClickListener(this);
button7.setOnClickListener(this);
button8.setOnClickListener(this);
button9.setOnClickListener(this);
buttonAdd.setOnClickListener(this);
buttonSubtract.setOnClickListener(this);
buttonMultiply.setOnClickListener(this);
buttonDivide.setOnClickListener(this);
buttonEqual.setOnClickListener(this);
buttonClear.setOnClickListener(this);
}
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.button_0:
resultText.append("0");
break;
case R.id.button_1:
resultText.append("1");
break;
case R.id.button_2:
resultText.append("2");
break;
case R.id.button_3:
resultText.append("3");
break;
case R.id.button_4:
resultText.append("4");
break;
case R.id.button_5:
resultText.append("5");
break;
case R.id.button_6:
resultText.append("6");
break;
case R.id.button_7:
resultText.append("7");
break;
case R.id.button_8:
resultText.append("8");
break;
case R.id.button_9:
resultText.append("9");
break;
case R.id.button_add:
num1 = Double.parseDouble(resultText.getText().toString());
addFlag = true;
resultText.setText("");
break;
case R.id.button_subtract:
num1 = Double.parseDouble(resultText.getText().toString());
subtractFlag = true;
resultText.setText("");
break;
case R.id.button_multiply:
num1 = Double.parseDouble(resultText.getText().toString());
multiplyFlag = true;
resultText.setText("");
break;
case R.id.button_divide:
num1 = Double.parseDouble(resultText.getText().toString());
divideFlag = true;
resultText.setText("");
break;
case R.id.button_equal:
num2 = Double.parseDouble(resultText.getText().toString());
if (addFlag) {
resultText.setText(String.valueOf(num1 + num2));
addFlag = false;
}
if (subtractFlag) {
resultText.setText(String.valueOf(num1 - num2));
subtractFlag = false;
}
if (multiplyFlag) {
resultText.setText(String.valueOf(num1 * num2));
multiplyFlag = false;
}
if (divideFlag) {
resultText.setText(String.valueOf(num1 / num2));
divideFlag = false;
}
break;
case R.id.button_clear:
resultText.setText("");
break;
default:
break;
}
}
}
```
在这个示例代码中,我们使用了一个 EditText 控件来显示计算结果,以及一些 Button 控件来输入数字和运算符。我们使用了一个 boolean 类型的变量来记录当前需要进行的运算类型,并使用 num1 和 num2 变量来存储操作数的值。在点击等号按钮时,我们根据当前的运算类型来执行相应的计算,并将结果显示在 EditText 中。
最后,在 AndroidManifest.xml 文件中注册你的 Activity:
```xml
<activity android:name=".CalculatorActivity" />
```
现在您可以运行您的应用程序,测试并使用您的计算器了。
阅读全文