本文實(shí)例為大家分享了android計(jì)算器實(shí)現(xiàn)加減乘除的具體代碼,供大家參考,具體內(nèi)容如下
創(chuàng)新互聯(lián)公司2013年至今,先為廣陵等服務(wù)建站,廣陵等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為廣陵企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問(wèn)題。
注:以下計(jì)算器只注重實(shí)現(xiàn)功能,不考慮其他BUG,只有兩位整數(shù)的算法運(yùn)算,適合新手
1、實(shí)現(xiàn)思想
將從鍵盤得到的數(shù)值放在一個(gè)字符數(shù)組中,以運(yùn)算符號(hào)(+-/)為分割點(diǎn),將兩個(gè)數(shù)值分割開(kāi),進(jìn)行算法運(yùn)算。*
2、難點(diǎn)
如何判斷是否為符號(hào)?+ - ×/
記錄符號(hào)的位置?
3、步驟:
1、得到鍵盤輸入的值
2、將值存放在一個(gè)字符數(shù)組中
3、遍歷數(shù)組中的每個(gè)數(shù),如果找到算法符號(hào),記錄下算法符號(hào)的位置。(要點(diǎn),從0開(kāi)始)
4、將算法符號(hào)前面的數(shù)放在一個(gè)定義的int型數(shù)中
5、同理
6、判斷是加減乘除的哪一個(gè)方法,然后進(jìn)行簡(jiǎn)單的運(yùn)算。
4、代碼
i:布局:
<?xml version="1.0" encoding="utf-8"?>
ii:獲取鍵盤的值,寫監(jiān)聽(tīng)
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); //綁定監(jiān)聽(tīng) 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()){ //數(shù)字按鈕 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; //運(yùn)算按鈕 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:算法功能實(shí)現(xiàn)
public void getResult(){ str = etGet.getText().toString(); strArray = new String[str.length()]; //將得到的字符串放在一個(gè)字符數(shù)組里 //System.out.println("str"+str); int n=0; for(int i=0; i
更多計(jì)算器功能實(shí)現(xiàn),請(qǐng)點(diǎn)擊專題: 計(jì)算器功能匯總 進(jìn)行學(xué)習(xí)
關(guān)于Android計(jì)算器功能的實(shí)現(xiàn),查看專題:Android計(jì)算器 進(jìn)行學(xué)習(xí)。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持創(chuàng)新互聯(lián)。