Android如何实现简单计算器
发表于:2025-01-17 作者:千家信息网编辑
千家信息网最后更新 2025年01月17日,这篇文章主要介绍了Android如何实现简单计算器,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。具体内容如下功能1、加减乘除四则运算2
千家信息网最后更新 2025年01月17日Android如何实现简单计算器
这篇文章主要介绍了Android如何实现简单计算器,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
具体内容如下
功能
1、加减乘除四则运算
2、归0
3、回退
4、即时运算
配置
在build.gradle(app) 中加入下面的代码
buildFeatures { viewBinding = true }
加入位置如下所示
compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 }buildFeatures { viewBinding = true}
布局
代码
public class MainActivity extends AppCompatActivity implements View.OnClickListener { private String tv="0"; private ActivityMainBinding inflate; private String count=""; private boolean isMax=false; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); inflate = ActivityMainBinding.inflate(getLayoutInflater()); setContentView(inflate.getRoot()); inflate.zero.setOnClickListener(this); inflate.yi.setOnClickListener(this); inflate.er.setOnClickListener(this); inflate.san.setOnClickListener(this); inflate.si.setOnClickListener(this); inflate.wu.setOnClickListener(this); inflate.liu.setOnClickListener(this); inflate.qi.setOnClickListener(this); inflate.ba.setOnClickListener(this); inflate.jiu.setOnClickListener(this); inflate.add.setOnClickListener(this); inflate.sub.setOnClickListener(this); inflate.mul.setOnClickListener(this); inflate.div.setOnClickListener(this); inflate.point.setOnClickListener(this); inflate.equal.setOnClickListener(this); inflate.dec.setOnClickListener(this); inflate.ac.setOnClickListener(this); } private void jisuanqi(){ Liststrs=new ArrayList<>(); StringBuilder f= new StringBuilder(); for(int i=0;i n,int v) { double con = 0; int j=0; con=Double.valueOf(n.get(0)); if(v==0) { for(int i=0;i i+1) { j=i+1; } } if(n.get(j).equals("x")){ n.set(i, String.valueOf(con*Double.valueOf(n.get(i+2)))); n.remove(i+1); n.remove(i+1); return number(n,0); }else if(n.get(j).equals("/")){ if(Double.valueOf(n.get(i+2))==0){ isMax=true; return 10; } n.set(i, String.valueOf(con/Double.valueOf(n.get(i+2)))); n.remove(i+1); n.remove(i+1); return number(n,0); } } } for(int i=0;i i+1) { j=i+1; } } if(n.get(j).equals("+")){ n.set(i, String.valueOf(con+Double.valueOf(n.get(i+2)))); n.remove(i+1); n.remove(i+1); return number(n,1); }else if(n.get(j).equals("-")){ n.set(i, String.valueOf(con-Double.valueOf(n.get(i+2)))); n.remove(i+1); n.remove(i+1); return number(n,1); } } return con; } @SuppressLint("NonConstantResourceId") @Override public void onClick(View v) { switch (v.getId()){ case R.id.point: if(String.valueOf(tv.charAt(tv.length()-1)).matches("\\d+")){ tv+="."; inflate.tv.setText(tv); } break; case R.id.zero: case R.id.yi: case R.id.er: case R.id.san: case R.id.si: case R.id.wu: case R.id.liu: case R.id.qi: case R.id.ba: case R.id.jiu: if(tv.equals("0")){ tv=""; } Button bt_digit=findViewById(v.getId()); tv+=bt_digit.getText(); inflate.tv.setText(tv); count=tv; jisuanqi(); break; case R.id.sub: if(String.valueOf(tv.charAt(0)).equals("0")){ tv="-"; }else { if(String.valueOf(tv.charAt(tv.length()-1)).equals(".")){ tv += "0"; } tv+="-"; } showText(); break; case R.id.add: case R.id.mul: case R.id.div: Button bt_operator=findViewById(v.getId()); String laststr=String.valueOf(tv.charAt(tv.length()-1)); if(!laststr.matches("(\\d+)") ) { tv = tv.substring(0, tv.length() - 1) + bt_operator.getText(); }else { if(laststr.equals(".")) { tv += "0"; } tv+=bt_operator.getText(); } showText(); break; case R.id.ac: tv="0"; inflate.tv.setText(tv); break; case R.id.dec: if(tv.length()>1) { tv = tv.substring(0, tv.length() - 1); }else { tv="0"; } jisuanqi(); break; case R.id.equal: if(!String.valueOf(tv.charAt(tv.length()-1)).matches("(\\d+)")){ tv = tv.substring(0, tv.length() - 1); } count=tv; jisuanqi(); tv=count; inflate.tv.setText(tv); break; } } }
感谢你能够认真阅读完这篇文章,希望小编分享的"Android如何实现简单计算器"这篇文章对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,更多相关知识等着你来学习!
篇文章
计算器
代码
运算
加减乘除
四则运算
价值
位置
兴趣
内容
功能
同时
四则
布局
更多
朋友
知识
编带
行业
资讯
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
什么是数据库的回表
胡道元 网络安全 黄新民
上海会智网络技术有限公司
小米服务器远程查看
用美国的服务器
位置服务器网卡是什么
adb数据库是否开源
网络安全法主体负有统筹规划
服务器硬件开发经理
哪里去承接软件开发
国资a股服务器公司
武汉图钉软件开发
hp打印机代理服务器
蚌埠系统软件开发定制公司
软件开发可以帮助国家吗
宿豫网络安全信息员
数据库怎么查询总金额
dnf频道正在连接服务器
dns青海电信服务器地址
数据库镜像故障
重庆宽视网络技术公司
对大数据时代软件开发
软件开发转卖
倩女幽魂以前的服务器
广州永盟网络技术有限公司简介
网神服务器安全加固
各种数据库的分页sql
百度云服务器可以共享吗
有线电视传输网络技术
浅析计算机网络安全管理