Android studio开发怎么实现计算器功能
发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,这篇文章主要介绍"Android studio开发怎么实现计算器功能"的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇"Android studio开发怎么实现计算
千家信息网最后更新 2026年10月31日Android studio开发怎么实现计算器功能
这篇文章主要介绍"Android studio开发怎么实现计算器功能"的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇"Android studio开发怎么实现计算器功能"文章能帮助大家解决问题。
前言
android 开发小实验
android 移动开发实现 简易计算器功能
小白也能轻松上手,复制粘贴就可使用
使用工具
Android Studio 或者 intellij idea
首先体验一下结果
预览图
源码
前端页面布局
activity_calculator.xml
后端源码
CalculatorActivity.java
package com.example.myappch6;import android.widget.TextView;import androidx.appcompat.app.AppCompatActivity;import android.os.Bundle;import android.app.Activity;import android.view.View;import android.widget.Button;import android.widget.EditText;public class CalculatorActivity extends Activity implements View.OnClickListener{ //数字0-9 Button number_0; Button number_1; Button number_2; Button number_3; Button number_4; Button number_5; Button number_6; Button number_7; Button number_8; Button number_9; //运算符 Button add; //+ Button minus; //- Button mul; //* Button divide; //除 Button equal; //= Button point; //小数点 //清除 Button det; boolean clean; //清空标识 EditText editText; //结果显示集 TextView text_show; //显示计算器文本控件 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_calculator); //数字0--9实例化 number_0=findViewById(R.id.zero); number_1=findViewById(R.id.one); number_2=findViewById(R.id.two); number_3=findViewById(R.id.three); number_4=findViewById(R.id.four); number_5=findViewById(R.id.five); number_6=findViewById(R.id.six); number_7=findViewById(R.id.seven); number_8=findViewById(R.id.eight); number_9=findViewById(R.id.nine); //运算符实例化 add=findViewById(R.id.add); //加 minus=findViewById(R.id.minus); //减 mul=findViewById(R.id.multiply); //乘 divide=findViewById(R.id.divider); //除 equal=findViewById(R.id.equal); //等 point=findViewById(R.id.point); //小数点 det=findViewById(R.id.button8); //清除 //结果显示集 text_show = findViewById(R.id.text_show); editText=findViewById(R.id.ediText);//添加事件点击事件 // 数字点击事件 number_0.setOnClickListener( this); number_1.setOnClickListener(this); number_2.setOnClickListener( this); number_3.setOnClickListener( this); number_4.setOnClickListener(this); number_5.setOnClickListener( this); number_6.setOnClickListener( this); number_7.setOnClickListener(this); number_8.setOnClickListener( this); number_9.setOnClickListener( this); // 符号点击事件 add.setOnClickListener( this); minus.setOnClickListener( this); mul.setOnClickListener( this); divide.setOnClickListener( this); point.setOnClickListener( this); equal.setOnClickListener( this); det.setOnClickListener( this); } //读取每个按钮内容 public void onClick(View view){ //获取文本内容 String input=editText.getText().toString(); switch (view.getId()){ case R.id.zero: // 0 case R.id.one: // 1 case R.id.two: // 2 case R.id.three: // 3 case R.id.four: // 4 case R.id.five: // 5 case R.id.six: // 6 case R.id.seven: // 7 case R.id.eight: // 8 case R.id.nine: // 9 case R.id.point: //小数点 if(clean){ clean=false; editText.setText(""); //赋值为空 } editText.setText(input+((Button)view).getText()+""); //结果集就是本身 break; case R.id.add: case R.id.minus: // 减 case R.id.multiply: // 乘 case R.id.divider: // 除 if(clean){ clean=false; input=""; editText.setText(""); } editText.setText(input+" "+((Button)view).getText()+" "); break; case R.id.button8: //清除 if(clean){ clean=false; input=""; editText.setText(""); }else if(input!=null || !input.equals("")){ //如果获取内容为空 editText.setText(input.substring(0,input.length() - 1 ));//结果集为空 break; } break; case R.id.equal: //运算结果= getResult(); //调用处理结果方法 break; } }//运算结果方法 private void getResult(){ String exp=editText.getText().toString(); //获取文本框内容 if(exp==null||exp.equals("")){ return; } if(!exp.contains("")){ return; } if(clean){ clean=false; return; } clean=true; double result=0; //进行截取 // 运算符前的数字 String s1=exp.substring(0,exp.indexOf(" ")); //运算符 String op=exp.substring(exp.indexOf(" ")+1,exp.indexOf(" ")+2); //运算符后的数字 String s2=exp.substring(exp.indexOf(" ")+3); if(!s1.equals("")&&!s2.equals("")){ //如果包含小数点的运算 double d1=Double.parseDouble(s1);//则数字都是double类型 double d2=Double.parseDouble(s2); if(op.equals("+")){ // 如果是+ result=d1+d2; text_show.setText(d1+ "+" +d2+"="); }else if(op.equals("-")){ //如果是- result=d1-d2; text_show.setText(d1+ "-" +d2+"="); }else if(op.equals("*")){ //如果是* result=d1*d2; text_show.setText(d1+ "*" +d2+"="); }else if(op.equals("/")){ if(d2==0){ //如果被除数是0 result=0;//则结果为0 } else { //否则执行正常运算 result=d1/d2; text_show.setText(d1+ "/" +d2+"="); } } if(!s1.contains(".") &&!s2.contains(".")&&!op.equals("/")){ //如果是整数类型 int r=(int)result;//都是整形 editText.setText(r+""); }else { editText.setText(result+""); } }else if(!s1.equals("")&& s2.equals("")){ //如果只输入运算符前的数字 editText.setText(exp);//直接返回当前输入内容 }else if (s1.equals("")&& !s2.equals("")){ //如果是只输入运算符后面的数 double d2 =Double.parseDouble(s2); //运算符当前没有输入数字 if(op.equals("+")){ result= 0 + d2; text_show.setText(d2+"="); }else if(op.equals("-")){ result= 0 - d2; text_show.setText(d2+"="); }else if (op.equals("*")){ result= 0; }else if(op.equals("/")){ result= 0; } if(!s1.contains(".")&&!s2.contains(".")){ int r=(int) result; editText.setText(r+""); }else { editText.setText(result+""); } }else { editText.setText(""); } }}关于"Android studio开发怎么实现计算器功能"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注行业资讯频道,小编每天都会为大家更新不同的知识点。
运算
结果
数字
运算符
内容
计算器
开发
功能
事件
小数
小数点
输入
文本
方法
知识
实例
源码
类型
行业
不同
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网科技公司
互联网科技保险
朗新科技与工业互联网
华宇互联网科技
广州互联网络科技有限公司
壕鑫互联网络科技
互联网科技公司的市场部门
新华互联网科技2019
茂名市互联网科技产业园
崇明区互联网教育科技诚信经营
互联网科技公司实习生
科技大学互联网
怎样加入科技互联网
北京市互联网新科技
领航科技大厦互联网公司
信承诺互联网科技有限公司
银川新华互联网科技学校是国营吗
北京天晋互联网科技有限公司
米泉互联网科技专业怎么样
长沙易易互联网科技有限公司
天津市摩尔互联网科技
万易互联网科技
美国互联网科技
互联网科技排名
互联网科技博客
青岛科技大学互联网大赛研究生
健康食品互联网创新科技园项目
黑科技 体验场景 互联网大会
中国互联网有什么科技
世界互联网科技成果奖