在android studio 制作加减乘除优先级相同的计算器
时间: 2023-09-27 17:12:08 浏览: 98
Android studio 做的计算器
下面是在 Android Studio 中制作加减乘除优先级相同的计算器的简单步骤:
1. 创建一个空白的 Android Studio 项目。
2. 打开 activity_main.xml 文件,将布局改为如下所示:
```
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<TextView
android:id="@+id/resultTextView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="0"
android:textSize="30sp"
android:gravity="end"
android:padding="20dp"/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<Button
android:id="@+id/button1"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:onClick="buttonClick"
android:text="1"
android:textSize="20sp"/>
<Button
android:id="@+id/button2"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:onClick="buttonClick"
android:text="2"
android:textSize="20sp"/>
<Button
android:id="@+id/button3"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:onClick="buttonClick"
android:text="3"
android:textSize="20sp"/>
<Button
android:id="@+id/buttonAdd"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:onClick="buttonClick"
android:text="+"
android:textSize="20sp"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<Button
android:id="@+id/button4"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:onClick="buttonClick"
android:text="4"
android:textSize="20sp"/>
<Button
android:id="@+id/button5"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:onClick="buttonClick"
android:text="5"
android:textSize="20sp"/>
<Button
android:id="@+id/button6"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:onClick="buttonClick"
android:text="6"
android:textSize="20sp"/>
<Button
android:id="@+id/buttonSubtract"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:onClick="buttonClick"
android:text="-"
android:textSize="20sp"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<Button
android:id="@+id/button7"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:onClick="buttonClick"
android:text="7"
android:textSize="20sp"/>
<Button
android:id="@+id/button8"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:onClick="buttonClick"
android:text="8"
android:textSize="20sp"/>
<Button
android:id="@+id/button9"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:onClick="buttonClick"
android:text="9"
android:textSize="20sp"/>
<Button
android:id="@+id/buttonMultiply"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:onClick="buttonClick"
android:text="*"
android:textSize="20sp"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<Button
android:id="@+id/buttonClear"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:onClick="buttonClick"
android:text="C"
android:textSize="20sp"/>
<Button
android:id="@+id/button0"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:onClick="buttonClick"
android:text="0"
android:textSize="20sp"/>
<Button
android:id="@+id/buttonEquals"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:onClick="buttonClick"
android:text="="
android:textSize="20sp"/>
<Button
android:id="@+id/buttonDivide"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:onClick="buttonClick"
android:text="/"
android:textSize="20sp"/>
</LinearLayout>
</LinearLayout>
```
3. 打开 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 {
TextView resultTextView;
String lastOperation = "";
String currentNumber = "";
String result = "";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
resultTextView = findViewById(R.id.resultTextView);
}
public void buttonClick(View view) {
Button button = (Button) view;
currentNumber += button.getText().toString();
resultTextView.setText(currentNumber);
}
public void operationClick(View view) {
Button button = (Button) view;
String operation = button.getText().toString();
if (!currentNumber.equals("")) {
if (!lastOperation.equals("")) {
calculate();
} else {
result = currentNumber;
}
lastOperation = operation;
currentNumber = "";
}
}
public void calculate() {
switch (lastOperation) {
case "+":
result = String.valueOf(Double.parseDouble(result) + Double.parseDouble(currentNumber));
break;
case "-":
result = String.valueOf(Double.parseDouble(result) - Double.parseDouble(currentNumber));
break;
case "*":
result = String.valueOf(Double.parseDouble(result) * Double.parseDouble(currentNumber));
break;
case "/":
result = String.valueOf(Double.parseDouble(result) / Double.parseDouble(currentNumber));
break;
}
resultTextView.setText(result);
}
public void clearClick(View view) {
result = "";
currentNumber = "";
lastOperation = "";
resultTextView.setText("0");
}
public void equalsClick(View view) {
if (!lastOperation.equals("") && !currentNumber.equals("")) {
calculate();
lastOperation = "";
currentNumber = result;
resultTextView.setText(result);
}
}
}
```
4. 运行应用程序,测试计算器是否正确工作。
以上就是在 Android Studio 中制作加减乘除优先级相同的计算器的简单步骤。
阅读全文