Android Studio实验:简易计算器的实现

40 篇文章 ¥59.90 ¥99.00
本文介绍了如何使用Android Studio和Java实现一个简单的计算器应用。涵盖了从新建项目到设计UI,再到编写逻辑代码实现加减乘除功能的完整过程。通过实践,读者可以学习Android应用开发的基础知识和事件处理。

Android Studio实验:简易计算器的实现

在本实验中,我们将使用Android Studio开发环境和Java语言实现一个简单的计算器应用程序。计算器将包含基本的加减乘除功能,并具有用户友好的界面。

首先,我们需要创建一个新的Android项目。在Android Studio的欢迎界面中选择“创建新项目”,然后按照向导的指示完成项目的设置。

一旦项目创建完成,我们需要设计计算器的用户界面。打开res目录下的activity_main.xml文件,并将其替换为以下代码:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
基于安卓java开发简单计算器小程序。 package com.he; import android.app.Activity; import android.os.Bundle; import android.text.InputType; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.EditText; import android.widget.Toast; public class CalculatorActivity extends Activity { //加plus 减subtract 乘multiply 除divide private EditText etResult; private Button btPlus; private Button btSub; private Button btMultiply; private Button btDivide; private Button btDelete; private Button btCe; private Button btPoint; private Button btDeng; private Button bt0; private Button bt1; private Button bt2; private Button bt3; private Button bt4; private Button bt5; private Button bt6; private Button bt7; private Button bt8; private Button bt9; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); etResult=(EditText)findViewById(R.id.etResult); btPlus=(Button)findViewById(R.id.btPlus); btSub=(Button)findViewById(R.id.btSubtract); btMultiply=(Button)findViewById(R.id.btMultiply); btDivide=(Button)findViewById(R.id.btDivide); btDelete=(Button)findViewById(R.id.btDelete); btDeng=(Button)findViewById(R.id.btDeng); btPoint=(Button)findViewById(R.id.btPoint); btCe=(Button)findViewById(R.id.btCe); bt0=(Button)findViewById(R.id.bt0); bt1=(Button)findViewById(R.id.bt1); bt2=(Button)findViewById(R.id.bt2); bt3=(Button)findViewById(R.id.bt3); bt4=(Button)findViewById(R.id.bt4); bt5=(Button)findViewById(R.id.bt5); bt6=(Button)findViewById(R.id.bt6); bt7=(Button)findViewById(R.id.bt7); bt8=(Button)findViewById(R.id.bt8); bt9=(Button)findViewById(R.id.bt9); etResult.setInputType(InputType.TYPE_NULL); /* * .按钮 */ btPoint.setOnClickListener(new OnClickListener() { public void onClick(View arg0) { String str1=etResult.getText().toString(); if(str1.equals("")){ etResult.setText(""); }else{ etResult.setText(str1+btPoint.getText().toString()); } } }); /* * 0---------9的数字按钮 */ bt0.setOnClickListener(new OnClickListener() { public void onClick(View arg0) { String str1=etResult.getText().toString(); if(str1.equals("")){ etResult.setText(""); }else{ etResult.setText(str1+bt0.getText().toString()); } } }); bt1.setOnClickListener(new OnClickListener() { public void onClick(View arg0) { String str1=etResult.getText().toString(); etResult.setText(str1+bt1.getText().toString()); } }); bt2.setOnClickListener(new OnClickListener() { public void onClick(View arg0) { String str1=etResult.getText().toString(); etResult.setText(str1+bt2.getText().toString()); } }); bt3.setOnClickListener(new OnClickListener() { public void onClick(View arg0) { String str1=etResult.getText().toString(); etResult.setText(str1+bt3.getText().toString()); } }); bt4.setOnClickListener(new OnClickListener() { public void onClick(View arg0) { String str1=etResult.getText().toString(); etResult.setText(str1+bt4.getText().toString()); } }); bt5.setOnClickListener(new OnClickListener() { public void onClick(View arg0) { String str1=etResult.getText().toString(); etResult.setText(str1+bt5.getText().toString()); } }); bt6.setOnClickListener(new OnClickListener() { public void onClick(View arg0) { String str1=etResult.getText().toString(); etResult.setText(str1+bt6.getText().toString()); } }); bt7.setOnClickListener(new OnClickListener() { public void onClick(View arg0) { String str1=etResult.getText().toString(); etResult.setText(str1+bt7.getText().toString()); } }); bt8.setOnClickListener(new OnClickListener() { public void onClick(View arg0) { String str1=etResult.getText().toString(); etResult.setText(str1+bt8.getText().toString()); } }); bt9.setOnClickListener(new OnClickListener() { public void onClick(View arg0) { String str1=etResult.getText().toString(); etResult.setText(str1+bt9.getText().toString()); } }); /* * ce键 清空 */ btCe.setOnClickListener(new OnClickListener() { public void onClick(View arg0) { etResult.setText(""); } }); /* * Delete键 */ btDelete.setOnClickListener(new OnClickListener() { public void onClick(View arg0) { String str=etResult.getText().toString(); if(str.length()==0){ etResult.setText(""); }else{ etResult.setText(str.subSequence(0, str.length()-1)); } } }); /* * + 、-、 * 、/四个按钮 */ btPlus.setOnClickListener(new OnClickListener() { public void onClick(View arg0) { final String str=etResult.getText().toString(); if(str.equals("")){ etResult.setText(""); }else{ etResult.setText(str+btPlus.getText().toString()); } } }); btSub.setOnClickListener(new OnClickListener() { public void onClick(View arg0) { String str=etResult.getText().toString(); if(str.equals("")){ etResult.setText(""); }else{ etResult.setText(str+btSub.getText().toString()); } } }); btMultiply.setOnClickListener(new OnClickListener() { public void onClick(View arg0) { String str=etResult.getText().toString(); if(str.equals("")){ etResult.setText(""); }else{ etResult.setText(str+btMultiply.getText().toString()); } } }); btDivide.setOnClickListener(new OnClickListener() { public void onClick(View arg0) { String str=etResult.getText().toString(); if(str.equals("")){ etResult.setText(""); }else{ etResult.setText(str+btDivide.getText().toString()); } } }); /* * = 按钮 */ btDeng.setOnClickListener(new OnClickListener() { public void onClick(View arg0) { String str=etResult.getText().toString(); /*if(str.charAt(str.length()-1)=='0' && str.charAt(str.length()-2)=='/'){ Toast.makeText(CalculatorActivity.this, "除数不能为0!", Toast.LENGTH_LONG).show(); }else{ }*/ if(str.indexOf('+')>0){ Double num1=Double.parseDouble(str.substring(0, str.indexOf('+'))); Double num2=Double.parseDouble(str.substring(str.indexOf('+')+1)); Double result=num1+num2; etResult.setText(result.toString()); } else if(str.indexOf('-')>0){ Double num1=Double.parseDouble(str.substring(0, str.indexOf('-'))); Double num2=Double.parseDouble(str.substring(str.indexOf('-')+1)); Double result=num1-num2; etResult.setText(result.toString()); } else if(str.indexOf('*')>0){ Double num1=Double.parseDouble(str.substring(0, str.indexOf('*'))); Double num2=Double.parseDouble(str.substring(str.indexOf('*')+1)); Double result=num1*num2; etResult.setText(result.toString()); }else if(str.indexOf('/')>0){ Double num1=Double.parseDouble(str.substring(0, str.indexOf('/'))); Double num2=Double.parseDouble(str.substring(str.indexOf('/')+1)); if(num2==0){ Toast.makeText(CalculatorActivity.this, "除数不能为0!", Toast.LENGTH_LONG).show(); }else{ Double result=num1/num2; etResult.setText(result.toString()); } } } }); } }
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值