一运行就停止运行
public class MainActivity extends AppCompatActivity implements OnClickListener{
Button bt0;
Button bt1;
Button bt2;
Button bt3;
Button bt4;
Button bt5;
Button bt6;
Button bt7;
Button bt8;
Button bt9;
Button bt_jia;
Button bt_jian;
Button bt_cheng;
Button bt_chu;
Button bt_del;
Button bt_deng;
Button bt_dian;
TextView textView1;
Boolean clear_flag;//清空标识
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
/*
初始化数据
*/
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);
bt_jia=(Button)findViewById(R.id.bt_jia);
bt_jian=(Button)findViewById(R.id.bt_jian);
bt_cheng=(Button)findViewById(R.id.bt_cheng);
bt_chu=(Button)findViewById(R.id.bt_chu);
bt_del=(Button)findViewById(R.id.bt_del);
bt_deng=(Button)findViewById(R.id.bt_deng);
bt_dian=(Button)findViewById(R.id.bt_dian);
textView1=(TextView)findViewById(R.id.textview1);
//设置监听
bt0.setOnClickListener(this);
bt1.setOnClickListener(this);
bt2.setOnClickListener(this);
bt3.setOnClickListener(this);
bt4.setOnClickListener(this);
bt5.setOnClickListener(this);
bt6.setOnClickListener(this);
bt7.setOnClickListener(this);
bt8.setOnClickListener(this);
bt9.setOnClickListener(this);
bt_cheng.setOnClickListener(this);
bt_chu.setOnClickListener(this);
bt_del.setOnClickListener(this);
bt_jia.setOnClickListener(this);
bt_jian.setOnClickListener(this);
bt_dian.setOnClickListener(this);
}
@Override
public void onClick(View v) {
String str=textView1.getText().toString();
switch (v.getId()){
case R.id.bt0:
case R.id.bt1:
case R.id.bt2:
case R.id.bt3:
case R.id.bt4:
case R.id.bt5:
case R.id.bt6:
case R.id.bt7:
case R.id.bt8:
case R.id.bt9:
case R.id.bt_dian:
if (clear_flag)
{
clear_flag=false;
str="";
textView1.setText("");
}
textView1.setText(str+((Button)v).getText());
break;
case R.id.bt_jia:
case R.id.bt_jian:
case R.id.bt_cheng:
case R.id.bt_chu:
textView1.setText(str+" "+((Button)v).getText()+" ");
break;
case R.id.bt_deng:
getResult();
break;
case R.id.bt_del:
if (clear_flag)
{
clear_flag=false;
str="";
textView1.setText("");
}
break;
}
}
private void getResult(){
String exp=textView1.getText().toString();
if(exp==""||exp==null) {
return;
}
if(!exp.contains(" ")){
return;
}
if(clear_flag){
clear_flag=false;
return;
}
clear_flag=true;
double result = 0;
String s1=exp.substring(0,exp.indexOf(" "));
String e1=exp.substring(exp.indexOf(" ")+1,exp.indexOf(" ")+2);
String s2=exp.substring(exp.indexOf(" ")+3);
if (!s1.equals("")&&!s2.equals("")){
double d1=Double.parseDouble(s1);
double d2=Double.parseDouble(s2);
if(e1.equals("+")){
result=d1+d2;
}
else if (e1.equals("-")){
result=d1-d2;
}else if (e1.equals("*"))
{
result=d1*d2;
}else if (e1.equals("/")) {
if(d2==0){
result=0;
}else {
result=d1/d2;
}
}
if(!s1.contains(".")&&!s2.contains(".")){
int r=(int)result;
textView1.setText(r+"");
}else {
textView1.setText(result+"");
}
}else if (s1.equals("")&&!s2.equals("")){
double d1=0;
double d2=Double.parseDouble(s2);
if(e1.equals("+")){
result=d2;
}
else if (e1.equals("-")){
result=0-d2;
}else if (e1.equals("*"))
{
result=0;
}else if (e1.equals("/")) {
result=0;
}
if(!s1.contains(".")&&!s2.contains(".")){
int r=(int)result;
textView1.setText(r+"");
}else {
textView1.setText(result+"");
}
}else if (!s1.equals("")&&s2.equals("")){
textView1.setText(exp);
}
else if (s1.equals("")&&s2.equals("")){
textView1.setText("");
}
}
}