简易计算器
来源:互联网 发布:js数组指定下标截取 编辑:程序博客网 时间:2024/05/16 07:11
制作简单的计算器
MainActivity.java中:
package cn.bzu.edu.computer.activity;import cn.bzu.edu.computer.model.ComputerBiz;import android.os.Bundle;import android.app.Activity;import android.app.AlertDialog;import android.app.Dialog;import android.view.Menu;import android.view.MenuInflater;import android.view.MenuItem;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.EditText;import android.widget.TextView;import android.widget.Toast;public class MainActivity extends Activity {private EditText op1Text;private TextView opText;private EditText op2Text;private TextView resultText;private Button add;private Button sub;private Button multiply;private Button divide;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);initComponnents();}public boolean onCreateOptionsMenu(Menu menu){MenuInflater inflater=getMenuInflater();inflater.inflate(R.menu.menu, menu);return true;}private void initComponnents() {op1Text = (EditText) this.findViewById(R.id.op1);opText = (TextView) this.findViewById(R.id.op);op2Text = (EditText) this.findViewById(R.id.op2);resultText = (TextView) this.findViewById(R.id.result);OpHandler opHandler=new OpHandler();//事件处理类add = (Button) this.findViewById(R.id.add); add.setOnClickListener(opHandler);//对加号按钮进行事件监听sub = (Button) this.findViewById(R.id.sub); sub.setOnClickListener(opHandler);multiply = (Button) this.findViewById(R.id.multiply);multiply.setOnClickListener(opHandler);divide = (Button) this.findViewById(R.id.divide);divide.setOnClickListener(opHandler);}// 编写事件处理类private class OpHandler implements OnClickListener {@Overridepublic void onClick(View v) {String op1Str=op1Text.getText().toString();String op2Str=op2Text.getText().toString();double num1=Double.parseDouble(op1Str);//将取得的数字转化为Double型double num2=Double.parseDouble(op2Str);double result=0;switch (v.getId()) {//根据按钮的不同分别作处理case R.id.add:opText.setText(" + "); result=ComputerBiz.add(num1, num2);//调用Computer类中的静态方法break;case R.id.sub:opText.setText(" - "); result=ComputerBiz.sub(num1, num2);break;case R.id.multiply:opText.setText(" * "); result=ComputerBiz.multiply(num1, num2);break;case R.id.divide:opText.setText(" / "); if(num2==0){ resultText.setText("除数不能为0"); Toast.makeText(MainActivity.this, "除数不能为0", Toast.LENGTH_LONG).show(); } else result=ComputerBiz.divide(num1, num2);break; default:break;}if(!(num2==0&&" / ".equals(opText.getText()))) resultText.setText(""+result);}}}
ComouterBiz.java类(注意是静态方法)
package cn.bzu.edu.computer.model;public class ComputerBiz {public static double add(double num1,double num2 ){return num1+num2;}public static double sub(double num1,double num2 ){return num1-num2;}public static double multiply(double num1,double num2 ){return num1*num2;}public static double divide(double num1,double num2 ) throws ArithmeticException{ return num1/num2;}}
- 简易计算器
- 简易计算器。。。
- 简易计算器
- 简易计算器
- 简易计算器
- 简易计算器
- 简易计算器
- 简易计算器
- 简易计算器
- 简易计算器
- 简易计算器
- 简易计算器
- 简易计算器
- 简易计算器
- 简易计算器
- 简易计算器
- 简易计算器
- 简易计算器
- 图像处理常用插值方法总结
- opencv_highgui244.lib(opencv_highgui244.dll) : fatal error LNK1112: 模块计算机类型“x64”与目标计算机类型“X86”冲突
- java基本配置
- android onTouchEvent 左右手势滑动事件处理
- Java反射机制
- 简易计算器
- 前端常用总结
- 黑马程序员——Java基础<三.排序+查找)
- SQLite学习笔记
- Lucene教程详解
- 图像处理常用边缘检测算子总结
- java基础入门之四(数组+排序)
- Tab应用之情景模式
- Java 多文件夹合并