Android studio怎么制作简易计算器功能
发表于:2025-01-16 作者:千家信息网编辑
千家信息网最后更新 2025年01月16日,这篇文章主要介绍"Android studio怎么制作简易计算器功能",在日常操作中,相信很多人在Android studio怎么制作简易计算器功能问题上存在疑惑,小编查阅了各式资料,整理出简单好用的
千家信息网最后更新 2025年01月16日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安全错误
数据库的锁怎样保障安全
山西java软件开发哪家强
合肥到叶集高速有几个服务器
600字网络安全手抄报
软件管家服务器
安徽爱玩网络技术有限公司
网络安全ctf多久能学会
怎么看服务器面板
程序员面试网络技术
软件集成软件开发
软件开发标准化规范如何落地
深圳视频安防软件开发价钱
家庭服务器的区别图片
顾巧论的计算机网络安全
我的世界服务器tp接收指令
如何获取数据库表格
软件开发 需要本科吗
网络安全道德教育五年级上
知到大型数据库技术答案
数据库统计各个班的学生人数
策略服务器未运行
数据库物理文件内容怎么看
网络安全怎么学
滴滴app软件开发多少钱
战斗服务器
苹果13验证失败连接服务器超时
智能网站服务器
管理与配置samba服务器
网络技术教程资源网
网络安全大赛干嘛的
传统网络安全的基础安全领域