赞
踩
简单计算器的加减乘除
提示:这里可以添加要学的内容
例如:
搭建 Java 开发环境
Android Studio jdk1.8
掌握 Java 基本语法
Switch选择语句
掌握条件语句
switch (op){ case "+": result=num1+num2; break; case "-": result=num1-num2; break; case "*": result=num1*num2; break; case "/": if (num2==0){ break; } result=num1/num2; break; default: result=0.0; break; }
XML文件
/导入背景图片/
android:background=“@drawable/girl”
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:background="@drawable/girl" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" tools:context=".MainActivity"> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:layout_weight="2.5" android:orientation="horizontal" > <EditText android:id="@+id/result" android:layout_width="match_parent" android:layout_height="match_parent" android:hint="0" android:gravity="right" android:layout_gravity="bottom" android:textStyle="bold" android:textSize="50sp" ></EditText> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:layout_weight="1" android:orientation="vertical"> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:layout_weight="1"> <Button android:id="@+id/btn_7" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="7" android:textSize="35sp" android:layout_weight="1" android:layout_gravity="center_vertical" android:layout_margin="5dp"/> <Button android:id="@+id/btn_8" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="8" android:textSize="35sp" android:layout_weight="1" android:layout_gravity="center_vertical" android:layout_margin="5dp"/> <Button android:id="@+id/btn_9" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="9" android:textSize="35sp" android:layout_weight="1" android:layout_gravity="center_vertical" android:layout_margin="5dp"/> <Button android:id="@+id/btn_sum" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="+" android:textSize="35sp" android:layout_weight="1" android:layout_gravity="center_vertical" android:layout_margin="5dp"/> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:layout_weight="1"> <Button android:id="@+id/btn_4" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="4" android:textSize="35sp" android:layout_weight="1" android:layout_gravity="center_vertical" android:layout_margin="5dp"/> <Button android:id="@+id/btn_5" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="5" android:textSize="35sp" android:layout_weight="1" android:layout_gravity="center_vertical" android:layout_margin="5dp"/> <Button android:id="@+id/btn_6" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="6" android:textSize="35sp" android:layout_weight="1" android:layout_gravity="center_vertical" android:layout_margin="5dp"/> <Button android:id="@+id/btn_sub" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="-" android:textSize="35sp" android:layout_weight="1" android:layout_gravity="center_vertical" android:layout_margin="5dp"/> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:layout_weight="1"> <Button android:id="@+id/btn_1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="1" android:textSize="35sp" android:layout_weight="1" android:layout_gravity="center_vertical" android:layout_margin="5dp"/> <Button android:id="@+id/btn_2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="2" android:textSize="35sp" android:layout_weight="1" android:layout_gravity="center_vertical" android:layout_margin="5dp"/> <Button android:id="@+id/btn_3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="3" android:textSize="35sp" android:layout_weight="1" android:layout_gravity="center_vertical" android:layout_margin="5dp"/> <Button android:id="@+id/btn_mult" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="*" android:textSize="35sp" android:layout_weight="1" android:layout_gravity="center_vertical" android:layout_margin="5dp"/> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:layout_weight="1"> <Button android:id="@+id/btn_0" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="0" android:textSize="35sp" android:layout_weight="1" android:layout_gravity="center_vertical" android:layout_margin="5dp"/> <Button android:id="@+id/btn_c" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="C" android:textSize="35sp" android:layout_weight="1" android:layout_gravity="center_vertical" android:layout_margin="5dp"/> <Button android:id="@+id/btn_dot" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="." android:textSize="35sp" android:layout_weight="1" android:layout_gravity="center_vertical" android:layout_margin="5dp"/> <Button android:id="@+id/btn_div" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="/" android:textSize="35sp" android:layout_weight="1" android:layout_gravity="center_vertical" android:layout_margin="5dp"/> <Button android:id="@+id/btn_equ" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="=" android:textSize="35sp" android:layout_weight="1" android:layout_gravity="center_vertical" android:layout_margin="5dp"/> </LinearLayout> </LinearLayout> </LinearLayout>
主活动
package com.example.calculator; 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 btn_0,btn_1,btn_2,btn_3,btn_4,btn_5,btn_6,btn_7,btn_8,btn_9; private Button btn_dot,btn_sum,btn_sub,btn_mult,btn_div,btn_clr,btn_equ; private TextView cal_result; private boolean isClickequ=false; private String strnum1,strnum2=""; private double num1,num2=0.0; private String op="";//操作符,标记 private double result; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); cal_result=findViewById(R.id.result); btn_0=findViewById(R.id.btn_0); btn_1=findViewById(R.id.btn_1); btn_2=findViewById(R.id.btn_2); btn_3=findViewById(R.id.btn_3); btn_4=findViewById(R.id.btn_4); btn_5=findViewById(R.id.btn_5); btn_6=findViewById(R.id.btn_6); btn_7=findViewById(R.id.btn_7); btn_8=findViewById(R.id.btn_8); btn_9=findViewById(R.id.btn_9); btn_dot=findViewById(R.id.btn_dot); btn_sum=findViewById(R.id.btn_sum); btn_sub=findViewById(R.id.btn_sub); btn_mult=findViewById(R.id.btn_mult); btn_div=findViewById(R.id.btn_div); btn_clr=findViewById(R.id.btn_c); btn_equ=findViewById(R.id.btn_equ); btn_0.setOnClickListener(this); btn_1.setOnClickListener(this); btn_2.setOnClickListener(this); btn_3.setOnClickListener(this); btn_4.setOnClickListener(this); btn_5.setOnClickListener(this); btn_6.setOnClickListener(this); btn_7.setOnClickListener(this); btn_8.setOnClickListener(this); btn_9.setOnClickListener(this); btn_dot.setOnClickListener(this); btn_sum.setOnClickListener(this); btn_sub.setOnClickListener(this); btn_mult.setOnClickListener(this); btn_div.setOnClickListener(this); btn_clr.setOnClickListener(this); btn_equ.setOnClickListener(this); } @Override public void onClick(View view) { switch (view.getId()){ case R.id.btn_0: if (isClickequ){ cal_result.setText(""); isClickequ =false; } cal_result.setText(cal_result.getText().toString()+"0"); break; case R.id.btn_1: if (isClickequ){ cal_result.setText(""); isClickequ =false; } cal_result.setText(cal_result.getText().toString()+"1"); break; case R.id.btn_2: if (isClickequ){ cal_result.setText(""); isClickequ =false; } cal_result.setText(cal_result.getText().toString()+"2"); break; case R.id.btn_3: if (isClickequ){ cal_result.setText(""); isClickequ =false; } cal_result.setText(cal_result.getText().toString()+"3"); break; case R.id.btn_4: if (isClickequ){ cal_result.setText(""); isClickequ =false; } cal_result.setText(cal_result.getText().toString()+"4"); break; case R.id.btn_5: if (isClickequ){ cal_result.setText(""); isClickequ =false; } cal_result.setText(cal_result.getText().toString()+"5"); break; case R.id.btn_6: if (isClickequ){ cal_result.setText(""); isClickequ =false; } cal_result.setText(cal_result.getText().toString()+"6"); break; case R.id.btn_7: if (isClickequ){ cal_result.setText(""); isClickequ =false; } cal_result.setText(cal_result.getText().toString()+"7"); break; case R.id.btn_8: if (isClickequ){ cal_result.setText(""); isClickequ =false; } cal_result.setText(cal_result.getText().toString()+"8"); break; case R.id.btn_9: if (isClickequ){ cal_result.setText(""); isClickequ =false; } cal_result.setText(cal_result.getText().toString()+"9"); break; case R.id.btn_c: if (isClickequ){ cal_result.setText(""); isClickequ =false; } cal_result.setText(""); break; case R.id.btn_dot: if (isClickequ){ cal_result.setText(""); isClickequ =false; } cal_result.setText(cal_result.getText().toString()+"."); break; case R.id.btn_sum: strnum1=cal_result.getText().toString();//存数值 if (strnum1.equals("")){ break; } num1=Double.parseDouble(strnum1); cal_result.setText("");//清空刚刚存数值 op="+"; isClickequ=false; break; case R.id.btn_sub: strnum1=cal_result.getText().toString();//存数值 if (strnum1.equals("")){ break; } num1=Double.parseDouble(strnum1); cal_result.setText("");//清空刚刚存数值 op="-"; isClickequ=false; break; case R.id.btn_mult: strnum1=cal_result.getText().toString();//存数值 if (strnum1.equals("")){ break; } num1=Double.parseDouble(strnum1); cal_result.setText("");//清空刚刚存数值 op="*"; isClickequ=false; break; case R.id.btn_div: strnum1=cal_result.getText().toString();//存数值 if (strnum1.equals("")){ break; } num1=Double.parseDouble(strnum1); cal_result.setText("");//清空刚刚存数值 op="/"; isClickequ=false; break; case R.id.btn_equ: strnum2=cal_result.getText().toString();//存操作数值2 if (strnum2.equals("")){ break; } num2=Double.parseDouble(strnum2); cal_result.setText("");//清空刚刚存数值 switch (op){ case "+": result=num1+num2; break; case "-": result=num1-num2; break; case "*": result=num1*num2; break; case "/": if (num2==0){ break; } result=num1/num2; break; default: result=0.0; break; } cal_result.setText(result+""); op=""; isClickequ=true; } } }
运行界面
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。