網站首頁 編程語言 正文
本文實例為大家分享了android studio簡易運算器,供大家參考,具體內容如下
JAVA語句代碼塊:
package com.example.douyingming;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.Button;
import android.widget.EditText;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.RadioGroup.OnCheckedChangeListener;
import android.widget.TextView;
import android.view.View;
import android.view.View.OnClickListener;
public class CompuActivity extends AppCompatActivity implements OnClickListener {
? ? private ?String opr="+"; ?//記錄當前運算符,最初運算符為+,可以更改
? ? private EditText et1,et2;
? ? private TextView tv;
? ? private Button bt;
? ? private RadioGroup rg;
? ? @Override
? ? protected void onCreate(Bundle savedInstanceState) {
? ? ? ? super.onCreate(savedInstanceState);
? ? ? ? setContentView(R.layout.samplecompu); ? ? ? ? ? ?//設置匹配頁面為samplecompu
? ? ? ? rg=(RadioGroup)findViewById(R.id.radioGroup1); //單選按鈕組的按鈕匹配
? ? ? ? et1=(EditText)findViewById(R.id.editText1);//匹配第一個編輯框的按鈕
? ? ? ? et2=(EditText)findViewById(R.id.editText2);//匹配第二個編輯框的按鈕
? ? ? ? tv=(TextView)findViewById(R.id.textView1);//匹配顯示文本
? ? ? ? bt=(Button)findViewById(R.id.button1);//獲得按鈕
? ? ? ? bt.setOnClickListener(this); ? //設置計算按鈕的監聽器
? ? ? ? rg.setOnCheckedChangeListener(new OnCheckedChangeListener(){ ? ?//設置單選按鈕監聽器,獲得單擊時執行
? ? ? ? ? ? @Override
? ? ? ? ? ? public void onCheckedChanged(RadioGroup group,int checkedId){
? ? ? ? ? ? ? ? // TODO Auto-generated method stub
? ? ? ? ? ? ? ? RadioButton rb=(RadioButton)findViewById(checkedId); //設定RadioButton類rb,獲得checkedId
? ? ? ? ? ? ? ? opr=rb.getText().toString(); ?//把rb強轉為String類型,賦給opr
? ? ? ? ? ? }
? ? ? ? });
? ? }
? ? @Override
? ? public void onClick(View v){ ? ? //定義點擊事件方法
? ? ? ? int sum,num1,num2; ? ? ? ? ? ? //定義三個變量
? ? ? ? num1 = Integer.parseInt(et1.getText().toString());//接收et1文本框中的數字(強轉為數字類型)
? ? ? ? num2=Integer.parseInt(et2.getText().toString());//接收et2文本框中的數字(強轉為數字類型)
? ? ? ? if (opr.equals("+")){ ? ?//+法
? ? ? ? ? ? sum=num1+num2;
? ? ? ? }else if (opr.equals("-")){//減法
? ? ? ? ? ? sum=num1-num2;
? ? ? ? }else if(opr.equals("*")){//乘法
? ? ? ? ? ? sum=num1*num2;
? ? ? ? }else{//如果不是加減乘,就執行除法
? ? ? ? ? ? sum=num1/num2;
? ? ? ? }
? ? ? ? tv.setText(String.valueOf(sum)); ?//顯示setText文本
? ? }
}
xml代碼塊
<?xml version="1.0" encoding="utf-8"?> <!-- 設置布局為垂直 --> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" ? ? android:layout_width="match_parent" ? ? android:layout_height="match_parent" ? ? android:orientation="vertical"> ? ? <!-- ? ? 增加id為editText1 ? ? 寬度剛度匹配自己 ? ? 文本顯示寬度為8 ? ? * ? ? 輸入的類型為數字 ? ? 設置該文本框焦點 ? ? --> ? ? <EditText ? ? ? ? android:id="@+id/editText1" ? ? ? ? android:layout_width="wrap_content" ? ? ? ? android:layout_height="wrap_content" ? ? ? ? android:ems="8" ? ? ? ? android:hint="請輸入數字" ? ? ? ? android:inputType="number" ? ? ? ? android:text=""> ? ? ? ? <requestFocus/> ? ? </EditText> ? ? <!-- 設置一個RadioGroup組 ? ? 增加一個id ? ? 寬度匹配父類 ? ? 高度等于自己 ? ? 該組水平排列 ? ? --> ? ? <RadioGroup ? ? ? ? android:id="@+id/radioGroup1" ? ? ? ? android:layout_width="match_parent" ? ? ? ? android:layout_height="wrap_content" ? ? ? ? android:orientation="horizontal"> ? ? ? ? <!-- ? ? ? ? 增加id ? ? ? ? 寬和高自己匹配 ? ? ? ? 選擇為選中狀態 ? ? ? ? 文本內容為+ ? ? ? ? (四個RadioButton內容相同) ? ? ? ? --> ? ? ? ? <RadioButton ? ? ? ? ? ? android:id="@+id/radio0" ? ? ? ? ? ? android:layout_width="wrap_content" ? ? ? ? ? ? android:layout_height="wrap_content" ? ? ? ? ? ? android:checked="true" ? ? ? ? ? ? android:text="+"/> ? ? ? ? <RadioButton ? ? ? ? ? ? android:id="@+id/radio1" ? ? ? ? ? ? android:layout_width="wrap_content" ? ? ? ? ? ? android:layout_height="wrap_content" ? ? ? ? ? ? android:checked="true" ? ? ? ? ? ? android:text="-"/> ? ? ? ? <RadioButton ? ? ? ? ? ? android:id="@+id/radio2" ? ? ? ? ? ? android:layout_width="wrap_content" ? ? ? ? ? ? android:layout_height="wrap_content" ? ? ? ? ? ? android:checked="true" ? ? ? ? ? ? android:text="*"/> ? ? ? ? <RadioButton ? ? ? ? ? ? android:id="@+id/radio3" ? ? ? ? ? ? android:layout_width="wrap_content" ? ? ? ? ? ? android:layout_height="wrap_content" ? ? ? ? ? ? android:checked="true" ? ? ? ? ? ? android:text="/"/> ? ? </RadioGroup> ? ? <!-- ? ? 增加id為editText2 ? ? 寬度剛度匹配自己 ? ? 文本顯示寬度為8 ? ? * ? ? 輸入的類型為數字 ? ? --> ? ? <EditText ? ? ? ? android:id="@+id/editText2" ? ? ? ? android:layout_width="wrap_content" ? ? ? ? android:layout_height="wrap_content" ? ? ? ? android:ems="8" ? ? ? ? android:hint="請輸入數2" ? ? ? ? android:inputType="number" ? ? ? ? android:text=""/> ? ? <!-- ? ? * ? ? 文本為= ? ? --> ? ? <Button ? ? ? ? android:id="@+id/button1" ? ? ? ? android:layout_width="match_parent" ? ? ? ? android:layout_height="wrap_content" ? ? ? ? android:text="="/> ? ? <TextView ? ? ? ? android:id="@+id/textView1" ? ? ? ? android:layout_width="match_parent" ? ? ? ? android:layout_height="wrap_content" ? ? ? ? android:text=""/> </LinearLayout>
原文鏈接:https://blog.csdn.net/weixin_48524820/article/details/115009058
相關推薦
- 2022-10-09 C#使用struct類型作為泛型Dictionary<TKey,TValue>的鍵_C#
- 2022-07-10 理解setuid()、setgid()和sticky位
- 2022-05-10 原生ajax 在服務器響應前撤銷請求
- 2022-08-16 git中cherry-pick命令的使用教程_其它綜合
- 2022-07-17 C++深入講解new與deleted關鍵字的使用_C 語言
- 2022-10-13 C++?auto自動類型推導規則和使用詳解_C 語言
- 2022-06-08 報錯:No fallback instance of type class**解決辦法
- 2022-05-29 C#實現語音播報功能_C#教程
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支