慕课网/安卓攻城狮视频学习及练习(五)——简陋计算器

简陋计算器

  1 public class FActivity extends Activity implements OnClickListener{
  2     Button btn_0;
  3     Button btn_1;
  4     Button btn_2;
  5     Button btn_3;
  6     Button btn_4;
  7     Button btn_5;
  8     Button btn_6;
  9     Button btn_7;
 10     Button btn_8;
 11     Button btn_9;
 12     Button btn_point;
 13     Button btn_clear;
 14     Button btn_delete;
 15     Button btn_add;
 16     Button btn_minus;
 17     Button btn_multiple;
 18     Button btn_divide;
 19     Button btn_equal;
 20     private EditText et;
 21     String string;
 22     Boolean flag=false;
 23   @Override
 24 protected void onCreate(Bundle savedInstanceState) {
 25     // TODO Auto-generated method stub
 26     super.onCreate(savedInstanceState);
 27     setContentView(R.layout.factivity);
 28
 29     btn_0=(Button) findViewById(R.id.button_0);
 30     btn_1=(Button) findViewById(R.id.button_1);
 31     btn_2=(Button) findViewById(R.id.button_2);
 32     btn_3=(Button) findViewById(R.id.button_3);
 33     btn_4=(Button) findViewById(R.id.button_4);
 34     btn_5=(Button) findViewById(R.id.button_5);
 35     btn_6=(Button) findViewById(R.id.button_6);
 36     btn_7=(Button) findViewById(R.id.button_7);
 37     btn_8=(Button) findViewById(R.id.button_8);
 38     btn_9=(Button) findViewById(R.id.button_9);
 39     btn_point=(Button) findViewById(R.id.button_point);
 40     btn_divide=(Button) findViewById(R.id.button_divide);
 41     btn_add=(Button) findViewById(R.id.button_add);
 42     btn_minus=(Button) findViewById(R.id.button_minus);
 43     btn_multiple=(Button) findViewById(R.id.button_multiple);
 44     btn_delete=(Button) findViewById(R.id.button_delete);
 45     btn_equal=(Button) findViewById(R.id.button_equal);
 46     btn_clear=(Button) findViewById(R.id.button_clear);
 47     et=(EditText) findViewById(R.id.editText1);
 48
 49         btn_0.setOnClickListener(this);
 50         btn_1.setOnClickListener(this);
 51         btn_2.setOnClickListener(this);
 52         btn_3.setOnClickListener(this);
 53         btn_4.setOnClickListener(this);
 54         btn_5.setOnClickListener(this);
 55         btn_6.setOnClickListener(this);
 56         btn_7.setOnClickListener(this);
 57         btn_8.setOnClickListener(this);
 58         btn_9.setOnClickListener(this);
 59         btn_point.setOnClickListener(this);
 60         btn_delete.setOnClickListener(this);
 61         btn_add.setOnClickListener(this);
 62         btn_minus.setOnClickListener(this);
 63         btn_multiple.setOnClickListener(this);
 64         btn_divide.setOnClickListener(this);
 65         btn_equal.setOnClickListener(this);
 66         btn_clear.setOnClickListener(this);
 67
 68
 69 }
 70   @Override
 71   public void onClick(View v) {
 72       string=et.getText().toString();
 73
 74     switch (v.getId()) {
 75     case R.id.button_0:
 76     case R.id.button_1:
 77     case R.id.button_2:
 78     case R.id.button_3:
 79     case R.id.button_4:
 80     case R.id.button_5:
 81     case R.id.button_6:
 82     case R.id.button_7:
 83     case R.id.button_8:
 84     case R.id.button_9:
 85     case R.id.button_point:
 86         {
 87             if (flag){
 88                 flag=false;
 89                 string="";
 90
 91             }
 92             et.setText(string+((Button)v).getText());
 93
 94         break;
 95         }
 96     case R.id.button_add:
 97     case R.id.button_minus:
 98     case R.id.button_multiple:
 99     case R.id.button_divide:
100         {
101             et.setText(string+" "+((Button)v).getText()+" ");
102
103         break;
104         }
105   case R.id.button_clear:
106     {
107         et.setText("");
108
109     break;
110     }
111   case R.id.button_delete:
112   {
113       if (!string.equals("")){
114       string=string.substring(0,string.length()-1);
115         et.setText(string);
116
117       }
118     break;
119   }
120   case R.id.button_equal:
121     {
122     getResult();
123     break;
124     }
125     }
126     }
127   private void getResult(){
128       string=et.getText().toString();
129       Double result=(double) 0;
130       if (string=="")
131           return;
132       if (!string.contains(" "))
133           return;
134       if (flag){
135          // flag=false;
136           return;
137       }
138       flag=true;
139       String s1=string.substring(0,string.indexOf(" "));
140       String op=string.substring(string.indexOf(" ")+1,string.indexOf(" ")+2);
141       String s2=string.substring(string.indexOf(" ")+3);
142
143       double num1=Double.parseDouble(s1);
144       double num2=Double.parseDouble(s2);
145
146
147     if (!s1.equals("")&&!s2.equals("")){
148          if (op.equals("+")){
149           result=num1+num2;
150       }
151        if (op.equals("-")){
152           result=num1-num2;
153
154       }
155        if (op.equals("*")){
156           result=num1*num2;
157
158        }
159        if (op.equals("÷")){
160           if (num2!=0)
161           result=num1/num2;
162           else
163               result=0.0;
164
165        }
166     }else if (s1.equals("")&&!s2.equals("")){
167         result=num2;
168     }else if (!s1.equals("")&&s2.equals("")){
169         result=num1;
170     }
171
172    et.setText(result+"");
173 }
174
175 }

intent传递




原文地址:https://www.cnblogs.com/twomeng/p/9476278.html

时间: 2024-08-03 05:30:56

慕课网/安卓攻城狮视频学习及练习(五)——简陋计算器的相关文章

慕课网/安卓攻城狮视频学习及练习(六)

manifest A跳转B,在B的文件中用permission权限,然后A就无权跳转到B,如果在A中用uses-permission把权限给了A,那么A就可以跳转到B了.可以通俗的说,permission给B了一把锁,A要进门,就要用uses-permission得到一把钥匙. onitemclicklister+onscrolllistner 1 public class FActivity extends Activity implements OnItemClickListener,OnS

慕课网/安卓攻城狮视频学习及练习(四)

relativelayout 子类控件自身的位置属性: framelayout absolutelayout很少使用 tablelayout 五布局之表格布局(TableLayout):TableLayout表格布局模型以行列的形式管理子控件,每一行为一个TableRow的对象,当然也可以是一个View的对象. 注意:隐藏属性和收缩.拉伸属性只能放置在父类布局中. 局部属性针对于tablerow中的某个控件. activity activity的生命周期中有两个重要循环. 1.点击home,让m

十八届五中全会:实施国家大数据战略,攻城狮们,你做好准备了吗

2015年10月29日,中共中央十八届五中全会顺利闭幕.会议通过了“十三五”计划并出台了一系列重大政策.“互联网+”与“大数据”也被写入了会议公报.大数据战略被升为国家高度!攻城狮们,赶紧准备啊! 现在正是学习大数据的绝佳机遇,让我们跟随王家林老师,一起学习大数据吧,实现年薪50万的梦想! 王家林老师的第一个中国梦:免费为全社会培养100万名优秀的大数据从业人员! 您可以通过王家林老师的微信号18610086859发红包捐助大数据.互联网+.O2O.工业4.0.微营销.移动互联网等系列免费实战课

创业公司求IOS、Android攻城狮一枚

地点:北京CBD附近(地铁1号线大望路) 魅力值:送珍贵期权 你要会: 1. IOS或者Android开发 2.能够处理类似微视/秒拍的视频录制功能 3.熟悉json 4.做过第三方登录 5.爱学习 6.no zuo 7.工作经验不限 如果你适合,就别再犹豫,发简历到[email protected](饶先生),或者加TA QQ随便骚扰,TA正在求骚扰 创业公司求IOS.Android攻城狮一枚,布布扣,bubuko.com

转:攻城狮修炼秘籍

漫校园生活,孜孜不倦的你,今天书多读一点! 海康威视为你的假期精心准备了精神的饕餮大餐! 把自己投入知识的海洋吧!为即将成为一名高冷俊俏的程序猿和媛而吹响最后的号角: 各类秘籍自助区 一.测试攻城狮 <软件测试> <测试之道> 二.硬件攻城狮 基础理论:工程数学.积分变换.信号与系统.数字信号处理.自动控制原理.英语 专业课程:数电.模电.嵌入式系统.热设计.DDR3.flash.开关电源 (若有实践经验,可只看基础理论) 三.应用软件开发攻城狮 必读: <UNIX环境高级编

十年北漂,一个软件“攻城狮”到职业养鸡人的心路历程

本人(武建亮)IT屌丝出生, 2005年到北京,2006年开始正式成为程序员,曾任某公司的技术总监. 2011年开始创业,曾做过电子商务网站.礼品网.智慧旅游相关的创业项目. 2014年底,再一次创业失败,背负40w的外债,放弃一切,远离IT圈. 微信扫一扫 今年是我来北京的第10个年头,人生有几个十年,我年轻时候最美好的时光,都给了这个绚丽的闪耀着金光的城市,但是,金光是他们的,而我什么也没有,今年,我离开北京,跟来时一样,孑然一身. 2005年,我考上了北京的一所学校,带着对这座城市的幻想,

【云栖大会】程序猿、攻城狮的大聚会 他们眼中的云栖大会是啥样

2016年云栖大会进行得如火如荼,"烧脑"."前沿"."高端"."技术"."一票难求"--这些关键词把这场"干货"分享大会衬托得神秘满满,有一群人却沉浸其中,自得其乐. 他们的名字叫--程序猿.攻城狮. 从最初的站长大会,到阿里云开发者大会,再到云栖大会:从200名草根站长到4万名业内外参与者:从单一峰会发展至超过100场论坛的"巨无霸"大会:从纯谈技术到融合音乐节.

攻城狮在路上(壹) Hibernate(九)--- Hibernate的映射类型

Hibernate采用映射类型作为Java类型和SQL类型的桥梁,对应type属性.分为两种:内置映射类型和客户化映射类型.一.内置映射类型: 1.Java基本类型的Hibernate映射类型: Java基础类型的Hibernate映射类型 Hibernate映射类型 Java类型 标准SQL类型 大小和取值范围 integer或者int int或者java.lang.Integer INTEGER   long long BIGINT   short short SMALLINT   byte

什么是“攻城狮”

攻城狮就是工程师,在互联网时代,对电脑程序员的一种调侃,对码农一种自嘲. 电脑程序员(码农) 程序员,俗称码农,是专门从事电脑程序开发,维护的专业人员.在我天朝,要成为一个具有中国特色的合格程序员,应该具有以下一些素质. 团队精神(TeamWork) 现代商业社会,各行各业都需要团队精神,而团队精神是一个程序员必备的最最基本的素质.随着如今,软件,规模越来越大,软件开发不再是编程,而是工程.像求伯君那样特立独行写出的wps时代,已经一去不复返.于是进入研发团队,从事商业化和产品化的开发任务,就必