Android studio怎么制作简易计算器功能
发表于:2025-02-22 作者:千家信息网编辑
千家信息网最后更新 2025年02月22日,这篇文章主要介绍"Android studio怎么制作简易计算器功能",在日常操作中,相信很多人在Android studio怎么制作简易计算器功能问题上存在疑惑,小编查阅了各式资料,整理出简单好用的
千家信息网最后更新 2025年02月22日Android studio怎么制作简易计算器功能
这篇文章主要介绍"Android studio怎么制作简易计算器功能",在日常操作中,相信很多人在Android studio怎么制作简易计算器功能问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"Android studio怎么制作简易计算器功能"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
布局如下:
布局文件代码:
JAVA代码:
package com.example.a01_helloworld;import androidx.appcompat.app.AppCompatActivity;import android.os.Bundle;import android.os.Debug;import android.util.Log;import android.view.View;import android.widget.Button;import android.widget.EditText;import com.google.android.material.badge.BadgeUtils;public class homework_3 extends AppCompatActivity implements View.OnClickListener{ //创建button对象 Button button_mc; //mc Button button_mjia; //m+ Button button_mjian; //m- Button button_mr; //mr Button button_c; //c Button button_xing; //* Button button_chu; // / Button button_xiaoyu; // < Button button_7; // 7 Button button_8; //8 Button button_9; //9 Button button_jian; // - Button button_4; // 4 Button button_5; // 5 Button button_6; // 6 Button button_jia; // + Button button_1; // 1 Button button_2; // 2 Button button_3; // 3 Button button_0; // 0 Button button_dian; // . Button button_dengyu; // = EditText result; // 判断文本编辑框中是否清空 boolean is_clear; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_homework_3); // 实例化对象 button_mc = (Button)findViewById(R.id.button_mc); button_mjia = (Button)findViewById(R.id.button_mjia); button_mjian = (Button)findViewById(R.id.button_mjian); button_mr = (Button)findViewById(R.id.button_mr); button_c = (Button)findViewById(R.id.button_c); button_xing = (Button)findViewById(R.id.button_xing); button_chu = (Button)findViewById(R.id.button_chu); button_xiaoyu = (Button)findViewById(R.id.button_xiaoyu); button_7 = (Button)findViewById(R.id.button_7); button_8 = (Button)findViewById(R.id.button_8); button_9 = (Button)findViewById(R.id.button_9); button_jian = (Button)findViewById(R.id.button_jian); button_4 = (Button)findViewById(R.id.button_4); button_5 = (Button)findViewById(R.id.button_5); button_6 = (Button)findViewById(R.id.button_6); button_jia = (Button)findViewById(R.id.button_jia); button_1 = (Button)findViewById(R.id.button_1); button_2 = (Button)findViewById(R.id.button_2); button_3 = (Button)findViewById(R.id.button_3); button_0 = (Button)findViewById(R.id.button_0); button_dian = (Button)findViewById(R.id.button_dian); button_dengyu = (Button)findViewById(R.id.button_dengyu); result = (EditText)findViewById(R.id.editText); // 给按钮设置点击对象 button_mc.setOnClickListener(this); button_mjia.setOnClickListener(this); button_mjian.setOnClickListener(this); button_mr.setOnClickListener(this); button_c.setOnClickListener(this); button_xing.setOnClickListener(this); button_chu.setOnClickListener(this); button_xiaoyu.setOnClickListener(this); button_7.setOnClickListener(this); button_8.setOnClickListener(this); button_9.setOnClickListener(this); button_jian.setOnClickListener(this); button_4.setOnClickListener(this); button_5.setOnClickListener(this); button_6.setOnClickListener(this); button_jia.setOnClickListener(this); button_1.setOnClickListener(this); button_2.setOnClickListener(this); button_3.setOnClickListener(this); button_0.setOnClickListener(this); button_dian.setOnClickListener(this); button_dengyu.setOnClickListener(this); } @Override public void onClick(View v) { String str = result.getText().toString(); switch (v.getId()){ case R.id.button_0: case R.id.button_1: case R.id.button_2: case R.id.button_3: case R.id.button_4: case R.id.button_5: case R.id.button_6: case R.id.button_7: case R.id.button_8: case R.id.button_9: if(result.length()==0){ str = ""; result.setText(""); } result.setText(str+((Button)v).getText()); break; case R.id.button_dian: if(result.length()==0){ return; } else { Log.d("homework_3","aaa"); result.setText(str+((Button)v).getText()); break; } case R.id.button_xiaoyu: if (is_clear) { is_clear =false ; str ="" ; result.setText(""); }else if (str!=null&&!str.equals("")){ result.setText(str.substring(0,str.length()-1)); } break; case R.id.button_jia: case R.id.button_jian: case R.id.button_xing: case R.id.button_chu: if (result.length()==0) { str = ""; result.setText(""); } result.setText(str+" "+((Button)v).getText()+" "); break; case R.id.button_c: is_clear = false; result.setText(""); case R.id.button_dengyu: Log.d("homework_3","="); getResult(); break; } } private void getResult(){ String exp = result.getText().toString(); if (exp==null||exp.equals("")) { return; } if(!exp.contains(" ")) { return; } if (is_clear) { is_clear = false; return; } is_clear = true; double Result = 0; // public int indexOf(int ch): 返回指定字符在字符串中第一次出现处的索引 String s1 = exp.substring(0,exp.indexOf(" "));//找到第一个数字 Log.d("homework_3",s1); String op = exp.substring(exp.indexOf(" ")+1,exp.indexOf(" ")+2);//找到运算符 Log.d("homework_3",op); String s2 = exp.substring(exp.indexOf(" ")+3);//找到第二个数字 Log.d("homework_3",s2); if (!s1.equals(" ")&&!s2.equals(" ")){ double d1 = Double.parseDouble(s1); double d2 = Double.parseDouble(s2); if(op.equals("+")){ Result = d1+d2; String o = String.valueOf(Result); Log.d("homework_3",o); result.setText(o); return; }else if (op.equals("-")){ Result = d1-d2; String o = String.valueOf(Result); Log.d("homework_3",o); result.setText(o); return; }else if (op.equals("*")){ Result = d1*d2; String o = String.valueOf(Result); Log.d("homework_3",o); result.setText(o); return; }else if (op.equals("/")){ Result = d1/d2; String o = String.valueOf(Result); Log.d("homework_3",o); result.setText(o); return; } } }}
到此,关于"Android studio怎么制作简易计算器功能"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!
功能
简易
计算器
制作
学习
对象
代码
字符
布局
数字
更多
帮助
实用
接下来
字符串
实例
按钮
文件
文本
文章
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
小米ac2100无法连接服务器
智慧法院解决方案软件开发
ctf网络安全试题
分布式数据库建立
联想sr588服务器管理地址
和鸿蒙系统通的服务器系统
杭州教育网络安全上网知识竟赛
2018网络安全ppt
中山无限软件开发
安卓识别二维码上传自定义服务器
办公软件开发公司A
安装版软件连不上数据库
数据库安装包免费完整版
电力 网络安全 中标
vb链接odbc数据库
浪潮服务器可以插几个硬盘
手机软件开发要会什么软件
深圳电话软件开发具体地址
控制电机软件开发需要看啥书
计算机网络技术基础子网划分
湖南城管通软件开发公司
我的世界租服务器如何安装mod
哪些数据库不用限定高质量期刊
普陀区自动化软件开发价格查询
科技软件互联网新闻
数据库文件如何升级新版本
数据库 号
软件开发理工思维
数据库的重构技术
云南计算机网络技术本科学校