十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
本文实例为大家分享了android计算器实现加减乘除的具体代码,供大家参考,具体内容如下
创新互联公司2013年至今,先为广陵等服务建站,广陵等地企业,进行企业商务咨询服务。为广陵企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。
注:以下计算器只注重实现功能,不考虑其他BUG,只有两位整数的算法运算,适合新手
1、实现思想
将从键盘得到的数值放在一个字符数组中,以运算符号(+-/)为分割点,将两个数值分割开,进行算法运算。*
2、难点
如何判断是否为符号?+ - ×/
记录符号的位置?
3、步骤:
1、得到键盘输入的值
2、将值存放在一个字符数组中
3、遍历数组中的每个数,如果找到算法符号,记录下算法符号的位置。(要点,从0开始)
4、将算法符号前面的数放在一个定义的int型数中
5、同理
6、判断是加减乘除的哪一个方法,然后进行简单的运算。
4、代码
i:布局:
<?xml version="1.0" encoding="utf-8"?>
ii:获取键盘的值,写监听
public void getButton(){ //获取按钮组件 btn0= (Button) findViewById(R.id.btn0); btn1= (Button) findViewById(R.id.btn1); btn2= (Button) findViewById(R.id.btn2); btn3= (Button) findViewById(R.id.btn3); btn4= (Button) findViewById(R.id.btn4); btn5= (Button) findViewById(R.id.btn5); btn6= (Button) findViewById(R.id.btn6); btn7= (Button) findViewById(R.id.btn7); btn8= (Button) findViewById(R.id.btn8); btn9= (Button) findViewById(R.id.btn9); btnJia= (Button) findViewById(R.id.btnJia); btnJian= (Button) findViewById(R.id.btnJian); btnCheng= (Button) findViewById(R.id.btnCheng); btnChu= (Button) findViewById(R.id.btnChu); btnDian= (Button) findViewById(R.id.btnDian); btnDengyu= (Button) findViewById(R.id.btnDengyu); btnQingchu= (Button) findViewById(R.id.btnQingchu); btnHuishan= (Button) findViewById(R.id.btnHuishan); etGet = (TextView) findViewById(R.id.etResult); //绑定监听 btn0.setOnClickListener(this); btn1.setOnClickListener(this); btn2.setOnClickListener(this); btn3.setOnClickListener(this); btn4.setOnClickListener(this); btn5.setOnClickListener(this); btn6.setOnClickListener(this); btn7.setOnClickListener(this); btn8.setOnClickListener(this); btn9.setOnClickListener(this); btnJia.setOnClickListener(this); btnJian.setOnClickListener(this); btnCheng.setOnClickListener(this); btnChu.setOnClickListener(this); btnDian.setOnClickListener(this); btnDengyu.setOnClickListener(this); btnQingchu.setOnClickListener(this); btnHuishan.setOnClickListener(this); }
iii:绑定按钮
@Override public void onClick(View v) { str = etGet.getText().toString(); switch (v.getId()){ //数字按钮 case R.id.btn0: case R.id.btn1: case R.id.btn2: case R.id.btn3: case R.id.btn4: case R.id.btn5: case R.id.btn6: case R.id.btn7: case R.id.btn8: case R.id.btn9: /* if (b_Clean) { b_Clean =false; etGet.setText(""); }*/ etGet.setText(str+((Button)v).getText()); break; //运算按钮 case R.id.btnJia: case R.id.btnJian: case R.id.btnCheng: case R.id.btnChu: case R.id.btnDian: /* if (b_Clean) { b_Clean =false; etGet.setText(""); }*/ etGet.setText(str+((Button)v).getText()); break; //清除按钮 case R.id.btnQingchu: /* if (b_Clean) { b_Clean =false; etGet.setText(""); }*/ etGet.setText(""); break; case R.id.btnDengyu: getResult(); break; case R.id.btnHuishan: str=etGet.getText().toString(); try { etGet.setText(str.substring(0,str.length()-1)); } catch (Exception e){ etGet.setText(""); } break; } }
iV:算法功能实现
public void getResult(){ str = etGet.getText().toString(); strArray = new String[str.length()]; //将得到的字符串放在一个字符数组里 //System.out.println("str"+str); int n=0; for(int i=0; i
更多计算器功能实现,请点击专题: 计算器功能汇总 进行学习
关于Android计算器功能的实现,查看专题:Android计算器 进行学习。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持创新互联。