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、總之,實現雖小,但仍然有很多需要注意的問題,例如排空時引號中的空格導致異常、各種監聽的實現等等。

感悟和體會

本次實驗最大的感受就是:小細節不能忽視。就比如說上述排空問題,一直閃退困擾了我許久,一致認為空格就是代表空,因此一直找不到錯誤。這次實踐給了我挺大的教訓,一定要關注細節,越是基礎性的知識越要反復操練,牢記於心,避免眼高手低,否則很容易栽在簡單問題的細節上。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM