zoukankan      html  css  js  c++  java
  • Android代码实现求和运算

    Android代码实现求和运算



    实验要求:

    用Android语言设计一个界面,点击某按钮实现求和运算。

    代码实现

    • 码云链接
    • 核心代码

      以上为求和按钮的代码截图,解析如图标注。
    • 实验结果

      当输入为空值时,会弹出如下提示:
    • 代码分析
      • 首先是从编辑框获取信息:

        如上,通过findViewById实现。如果要进一步引用mAdd1的值,则需要用到mAdd1.getText().toString()实现。
      • 排空问题:

        如上,如果输入为空值的话,则弹出一个提示框,提示重新输入,并不进行求和运算。
      • 求和运算:

        通过Integer将mAdd中的值强制转换为int类型,并将数值赋予value,以方便下一步的求和计算。
      • 结果显示:

        利用textView。定义private TextView textView;后即可进行上图所示操作,实现求和结果的输出显示。

    实验过程中遇到的问题及解决

    当输入为空的时候,出现闪退。

    • 问题描述:
      程序中虽然设置了排空,但是在程序运行的时候,如果没有输入数值,则会导致程序意外退出。正常输入数值时不会有此现象。
    • 分析:
      由于正常输入数值时不会有闪退现象,因此分析问题出在了排空代码块处,代码如下:

      检查发现,引号中间有一个空格,而非真的空值。问题很有可能出现在这里。
    • 解决:
      尝试着将空格去掉后,重新点击运行,提示框正常出现,问题解决。
    • 扩展:
      在查阅排空问题的过程中,了解到String.trim()的用法,trim()有去掉首尾空格的作用。但是应用于本例后失败了,分析原因,是因为trim()是去掉字符串的首尾的空格,而本例的editText值已强制转换为int类型,所以不受用。

    学到了什么

    • 1、首先巩固了Android程序设计中的界面设计Button的使用
    • 2、温习了字符串与数值之间的转变,用Integer。例如:int value1=Integer.parseInt(mAdd1.getText().toString());就是将编辑框mAdd1中的字符串类型强制转换成int类型,从而可以赋值给int类型的value,为接下来的运算做准备。
    • 3、另外,在调试过程中,知道了textView的用法,它可以将结果显示出来。
    • 4、还有一点,就是设置输入类型。刚开始运行程序时,点击编辑框会弹出按键,但是默认的为字母输入界面,如果想输入数字的话还需要另外点击数字按钮,才能转换到数字的输入界面。如下:

      所以想到能不能实现默认弹出的就是数字输入界面,找到如下方法:在EditText下面添加一句:android:inputType="number",再次点击编辑框,则自动出现如下输入界面:

      问题得到解决。
      基于上述用法的好处,有上网查了一些关于输入模式的其他语句,可参考 Android资料之-EditText中的inputType
    • 5、总之,实现虽小,但仍然有很多需要注意的问题,例如排空时引号中的空格导致异常、各种监听的实现等等。

    感悟和体会

    本次实验最大的感受就是:小细节不能忽视。就比如说上述排空问题,一直闪退困扰了我许久,一致认为空格就是代表空,因此一直找不到错误。这次实践给了我挺大的教训,一定要关注细节,越是基础性的知识越要反复操练,牢记于心,避免眼高手低,否则很容易栽在简单问题的细节上。

  • 相关阅读:
    MySQL主从配置实现(同一台主机)
    MySQL主从配置实现
    FTP的安装配置使用
    NFS的安装配置使用
    Samba的安装配置使用
    Cacti的基本安装配置
    STL标准库-迭代器
    STL标准库-容器-unordered_set
    STL标准库-hash
    STL标准库-容器-rb_tree
  • 原文地址:https://www.cnblogs.com/yaojingjing/p/7039905.html
Copyright © 2011-2022 走看看