Androidstudio实现一个简易的加法器 您所在的位置:网站首页 加法简单计算 Androidstudio实现一个简易的加法器

Androidstudio实现一个简易的加法器

2024-07-12 23:42| 来源: 网络整理| 查看: 265

 

Androidstudio实现一个简易的加法器——分享两种方法实现(日常作业练习)

 

                                                                                            ————安德风QQ1652102745

 

 

一、作业题目要求:

 

 

二、实现题目第一问(等号通过按钮实现【button】)

 1、前期需要在activity_main.xml文件设计布局

 

 

 最终布局效果图

 

 

2、控件准备:

需要2个EditText控件(两个输入文本框):EditText1(用来作为加法1)、EditText2(用来作为加法2)

2个TextView控件: TextView1(用作“+”),TextView2(用作输出求和)

1个Button控件:Button1(用作“=”,用来点击等于时,TextView2作为输出和的结果)

 

PS:以上控件要求是用来作为布局使用,在MainActivity.java 文件中实现功能部分只用到:EditText1(用来作为加法1)=》更改ID为et1、EditText2(用来作为加法2)=》更改ID为et2

Button1(用作“=”,用来点击等于时,TextView2作为输出和的结果)=>更改ID为bt

TextView2(用作输出求和)=》更改ID为tv

 更改ID名可以自定义,要求规范更改控件ID名要求见明知意,还有控件ID最好与MainActivity.java 文件中声明变量一致便于修改。

 

3、activity_main.xml界面布局源代码:

 

1 2 8 9 22 23 34 35 45 46 57 58 67 68

 

4、实现功能MainActivity.java源代码

1 package com.example.computer; 2 3 import androidx.appcompat.app.AppCompatActivity; 4 5 import android.os.Bundle; 6 import android.view.KeyEvent; 7 import android.view.View; 8 import android.widget.Button; 9 import android.widget.EditText; 10 import android.widget.TextView; 11 12 public class MainActivity extends AppCompatActivity implements View.OnClickListener { 13 14 EditText et1;//声明加法1输入文本框变量为et1(与控件ID一致) 15 EditText et2;//声明加法2输入文本框变量为et2(与控件ID一致) 16 TextView tv;//声明和普通文本框变量为tv(与控件ID一致) 17 Button bt;//声明等于按钮控件变量为bt(与控件ID一致) 18 int sum;//定义一个sum自定义变量方便后面方法求和存放求和的值 19 20 @Override 21 protected void onCreate(Bundle savedInstanceState) { 22 super.onCreate(savedInstanceState); 23 setContentView(R.layout.activity_main); 24 25 et1 = findViewById(R.id.et1);//寻找加法1输入文本框ID 26 et2 = findViewById(R.id.et2);//寻找加法2输入文本框ID 27 tv = findViewById(R.id.tv);//寻找和普通文本框ID 28 bt=findViewById(R.id.bt);//寻找等于号普通按钮ID 29 bt.setOnClickListener(this);//给等于号普通按钮安装一个监听器,便于点击等于号按钮,和就能求出 30 31 32 } 33 //String => int =>String 34 @Override 35 public void onClick(View v) { 36 String j1=et1.getText().toString();//通过et1ID(加法1输入文本框)得到文本内容(数据类型为字符串型)赋值给j1(也就是说j1代表加法1,可以理解为是它的小名) 37 String j2=et2.getText().toString();//通过et2ID(加法2输入文本框)得到文本内容(数据类型为字符串型)赋值给j2(也就是说j2代表加法2,可以理解为是它的小名) 38 int num1=Integer.valueOf(j1).intValue();//将j1字符串类型强制转换为int类型 39 int num2=Integer.valueOf(j2).intValue();//将j2字符串类型强制转换为int类型 40 sum=num1+num2;//开始运算加法1+ 加法2=和(sum代表和的变量) 41 j1=String.valueOf(sum);//再将sum(和),由int类型转换为string型便于,setText()输出(只能输出字符串类型),赋值给j1或者j2帮忙代理存储数据 42 tv.setText(j1);//由于setText(只能输出字符串类型)所以通过j1(加法1或者j2加法2)代理帮忙存储来输出和的值 43 60 61 } 62 }

5、实现文本边框border.xml源代码:

 

1 2 3 4 6 9 11 16 17 18 19 20 24 27 29 34 35 36

 

 6、最终在模拟器调试代码效果图:

 

 

 

 

 

三、实现题目思考题第二问(等号通过普通文本框实现【TextView】)

 1、通过在上面第一问布局设计的基础上只需要稍作修改即可,把等号按钮(Button控件)改成等号文本(TextView控件,这里我把等号文本ID更改为dy),其余控件不变如图所示:

 

 

 

 

2、activity_main.xml界面布局源代码:

 

1 2 8 9 23 24 34 35 46 47 58 59 70 71

 

 

 

 

3、实现功能MainActivity.java源代码

 

1 package com.example.computer; 2 3 import androidx.appcompat.app.AppCompatActivity; 4 5 import android.os.Bundle; 6 import android.view.View; 7 8 import android.widget.EditText; 9 import android.widget.TextView; 10 11 public class MainActivity extends AppCompatActivity { 12 EditText et1;//声明加法1输入文本框变量为et1(与控件ID一致) 13 EditText et2;//声明加法2输入文本框变量为et2(与控件ID一致) 14 TextView tv;//声明和普通文本框变量为tv(与控件ID一致) 15 TextView dy;//声明等于号普通文本框变量为tv(与控件ID一致) 16 int sum;//定义一个sum自定义变量方便后面方法求和存放求和的值 17 18 @Override 19 protected void onCreate(Bundle savedInstanceState) { 20 super.onCreate(savedInstanceState); 21 setContentView(R.layout.activity_main); 22 et1 = findViewById(R.id.et1);//寻找加法1输入文本框ID 23 et2 = findViewById(R.id.et2);//寻找加法2输入文本框ID 24 tv = findViewById(R.id.tv);//寻找和普通文本框ID 25 dy=findViewById(R.id.dy);//寻找等于号普通文本框ID 26 27 } 28 29 public void MyClick(View view) { 30 String j1=et1.getText().toString();//通过et1ID(加法1输入文本框)得到文本内容(数据类型为字符串型)赋值给j1(也就是说j1代表加法1,可以理解为是它的小名) 31 String j2=et2.getText().toString();//通过et2ID(加法2输入文本框)得到文本内容(数据类型为字符串型)赋值给j2(也就是说j2代表加法2,可以理解为是它的小名) 32 int sum1=Integer.valueOf(j1).intValue();//将j1字符串类型强制转换为int类型 33 int sum2=Integer.valueOf(j2).intValue();//将j2字符串类型强制转换为int类型 34 sum=sum1+sum2;//开始运算加法1+ 加法2=和(sum代表和的变量) 35 j1=String.valueOf(sum);//再将sum(和),由int类型转换为string型便于,setText()输出(只能输出字符串类型),赋值给j1或者j2帮忙代理存储数据 36 tv.setText(j1);//由于setText(只能输出字符串类型)所以通过j1(加法1或者j2加法2)代理帮忙存储来输出和的值 37 } 38 }

4、最终在模拟器调试代码效果图:

 

 

 

 

三、总结简单概括:

    问题1核心代码讲解 :等号(button控件)采用通过内部类+接口的方式实现加法器功能

    问题2 核心代码讲解: 等号(TextView文本控件)采用OnClick属性实现加法器功能

     问题1+问题2在实现加法功能中运用到了,数据类型转换的知识:

    在实现加法器过程中用到三次数据类型转换

(①起初用户输入加法1或加法2时用了String ——>②为了便于做加法计算需要强制转换成int——>③为了最终输出结果用到setText()函数,该函数输出结果只能为字符串类型,所以要强制转换成String)

 以上总结是我在实现简单加法器的2种方法,希望能给大家带来帮助。感谢大家关注,有问题欢迎在下方留言。看到后我会一一解答。

 

 



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有