在Android中出现致命异常 [英] FATAL Exception got in Android

查看:72
本文介绍了在Android中出现致命异常的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

 09-11 11:02:19.365:E / AndroidRuntime(1263):致命异常:主
09-11 11:02:19.365:E / AndroidRuntime(1263) :进程:com.nnk.program4,PID:1263
09-11 11:02:19.365:E / AndroidRuntime(1263):java.lang.NumberFormatException:无效的int:+
09- 11 11:02:19.365:E / AndroidRuntime(1263):at java.lang.Integer.invalidInt(Integer.java:137)
09-11 11:02:19.365:E / AndroidRuntime(1263):at java.lang.Integer.parse(Integer.java:374)
09-11 11:02:19.365:E / AndroidRuntime(1263):at java.lang.Integer.parseInt(Integer.java:365)
09-11 11:02:19.365:E / AndroidRuntime(1263):at java.lang.Integer.parseInt(Integer.java:331)
09-11 11:02:19.365:E / AndroidRuntime (1263):at com.nnk.program4.Calc $ 1.onClick(Calc.java:40)
09-11 11:02:19.365:E / AndroidRuntime(1263):at android.view.View.performClick (View.java:4438)
09-11 11:02:19.365:E / AndroidRuntime(1263):at android.view.View $ PerformClick.run(View.java:18422)
09- 11 11:02:19.365:E / Android运行时(1263):在android.os.Handler.handleCallback(Handler.java:733)
09-11 11:02:19.365:E / AndroidRuntime(1263):在android.os.Handler.dispatchMessage(Handler) .java:95)
09-11 11:02:19.365:E / AndroidRuntime(1263):在android.os.Looper.loop(Looper.java:136)
09-11 11:02 :19.365:E / AndroidRuntime(1263):在android.app.ActivityThread.main(ActivityThread.java:5017)
09-11 11:02:19.365:E / AndroidRuntime(1263):at java.lang。 reflect.Method.invokeNative(Native Method)
09-11 11:02:19.365:E / AndroidRuntime(1263):at java.lang.reflect.Method.invoke(Method.java:515)
11月9日至11日:02:19.365:E / AndroidRuntime(1263):在com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:779)
11月9日至11日:02:19.365: E / AndroidRuntime(1263):at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
09-11 11:02:19.365:E / AndroidRuntime(1263):at dalvik.system .NativeStart.main(原生方法)







我的程序



  public   class  Calc扩展活动
{

@Override
受保护 void onCreate(Bundle savedInstanceState){
// TODO自动生成的方法存根
super.onCreate(savedInstanceState);
setContentView(R.layout.calc);
this .myLogin();
}

private EditText tx1,tx2,tx3;
private 按钮b1;
private TextView tv1;

public void myLogin()
{
tx1 =(EditText)findViewById(R.id.editText1);
tx2 =(EditText)findViewById(R.id.editText2);
tx3 =(EditText)findViewById(R.id.editText3);
b1 =(Button)findViewById(R.id.button1);
tv1 =(TextView)findViewById(R.id.textView1);

b1.setOnClickListener( new OnClickListener(){
@Override
public void onClick(查看v){
// TODO自动生成的方法存根

int no1 = Integer.parseInt(tx1.getText( ).toString());
int no2 = Integer.parseInt(tx3.getText()。toString());
System。< span class =code-keyword> out .println(no1 + no2);
String opt = tx2.getText()。toString ();
系统。 out .println(opt);

if (opt.equals( +)){
tv1.setText( 结果: +(NO1 + NO 2));
} 其他 {
if (opt.equals( - )){
tv1.setText( 结果: +(no1-no2));
} 其他 {
if (opt.equals( *)){
tv1.setText( 结果: +(no1 * no2));
} 其他 {
if (opt.equals( /)){
try {
tv1.setText( 结果: +(no1 / no2));
} catch (例外e){
tv1.setText(e.getMessage());
}
} else {
tv1.setText( < span class =code-string>抱歉错误的操作员
);
}
}
}
}
}
});
}
}

解决方案

1.onClick(Calc.java:40)
09- 11 11:02:19.365:E / AndroidRuntime(1263):在android.view.View.performClick(View.java:4438)
09-11 11:02:19.365:E / AndroidRuntime(1263):at android.view.View


PerformClick.run(View.java:18422)
09-11 11:02:19.365:E / AndroidRuntime(1263):at android.os .Handler.handleCallback(Handler.java:733)
09-11 11:02:19.365:E / AndroidRuntime(1263):在android.os.Handler.dispatchMessage(Handler.java:95)
09-11 11:02:19.365:E / AndroidRuntime(1263):在android.os.Looper.loop(Looper.java:136)
09-11 11:02:19.365:E / AndroidRuntime(1263) :在android.app.ActivityThread.main(ActivityThread.java:5017)
09-11 11:02:19.365:E / AndroidRuntime(1263):at java.lang.reflect.Method.invokeNative(Native Method)
09-11 11:02:19.365:E / AndroidRuntime(1263):at java.lang.reflect.Method.invoke(Method.java:515)
09-11 11:02:19.365: E / AndroidRuntime(1263) :在com.android.internal.os.ZygoteInit

MethodAndArgsCaller.run(ZygoteInit.java:779)
十一月9日至11日:02:19.365:E / AndroidRuntime(1263 ):at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
09-11 11:02:19.365:E / AndroidRuntime(1263):at dalvik.system.NativeStart.main(原生方法)







我的计划



  public   class  Calc扩展活动
{

@Override
protected void onCreate (Bundle savedInstanceState){
// TODO自动生成的方法存根
super .onCreate(savedInstanceState);
setContentView(R.layout.calc);
this .myLogin();
}

private EditText tx1,tx2,tx3;
private 按钮b1;
private TextView tv1;

public void myLogin()
{
tx1 =(EditText)findViewById(R.id.editText1);
tx2 =(EditText)findViewById(R.id.editText2);
tx3 =(EditText)findViewById(R.id.editText3);
b1 =(Button)findViewById(R.id.button1);
tv1 =(TextView)findViewById(R.id.textView1);

b1.setOnClickListener( new OnClickListener(){
@Override
public void onClick(查看v){
// TODO自动生成的方法存根

int no1 = Integer.parseInt(tx1.getText( ).toString());
int no2 = Integer.parseInt(tx3.getText()。toString());
System。< span class =code-keyword> out .println(no1 + no2);
String opt = tx2.getText()。toString ();
系统。 out .println(opt);

if (opt.equals( +)){
tv1.setText( 结果: +(NO1 + NO 2));
} 其他 {
if (opt.equals( - )){
tv1.setText( 结果: +(no1-no2));
} 其他 {
if (opt.equals( *)){
tv1.setText( 结果: +(no1 * no2));
} 其他 {
if (opt.equals( /)){
try {
tv1.setText( 结果: +(no1 / no2));
} catch (例外e){
tv1.setText(e.getMessage());
}
} else {
tv1.setText( < span class =code-string>抱歉错误的操作员
);
}
}
}
}
}
});
}
}


09-11 11:02:19.365: E/AndroidRuntime(1263): FATAL EXCEPTION: main
09-11 11:02:19.365: E/AndroidRuntime(1263): Process: com.nnk.program4, PID: 1263
09-11 11:02:19.365: E/AndroidRuntime(1263): java.lang.NumberFormatException: Invalid int: "+"
09-11 11:02:19.365: E/AndroidRuntime(1263): 	at java.lang.Integer.invalidInt(Integer.java:137)
09-11 11:02:19.365: E/AndroidRuntime(1263): 	at java.lang.Integer.parse(Integer.java:374)
09-11 11:02:19.365: E/AndroidRuntime(1263): 	at java.lang.Integer.parseInt(Integer.java:365)
09-11 11:02:19.365: E/AndroidRuntime(1263): 	at java.lang.Integer.parseInt(Integer.java:331)
09-11 11:02:19.365: E/AndroidRuntime(1263): 	at com.nnk.program4.Calc$1.onClick(Calc.java:40)
09-11 11:02:19.365: E/AndroidRuntime(1263): 	at android.view.View.performClick(View.java:4438)
09-11 11:02:19.365: E/AndroidRuntime(1263): 	at android.view.View$PerformClick.run(View.java:18422)
09-11 11:02:19.365: E/AndroidRuntime(1263): 	at android.os.Handler.handleCallback(Handler.java:733)
09-11 11:02:19.365: E/AndroidRuntime(1263): 	at android.os.Handler.dispatchMessage(Handler.java:95)
09-11 11:02:19.365: E/AndroidRuntime(1263): 	at android.os.Looper.loop(Looper.java:136)
09-11 11:02:19.365: E/AndroidRuntime(1263): 	at android.app.ActivityThread.main(ActivityThread.java:5017)
09-11 11:02:19.365: E/AndroidRuntime(1263): 	at java.lang.reflect.Method.invokeNative(Native Method)
09-11 11:02:19.365: E/AndroidRuntime(1263): 	at java.lang.reflect.Method.invoke(Method.java:515)
09-11 11:02:19.365: E/AndroidRuntime(1263): 	at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
09-11 11:02:19.365: E/AndroidRuntime(1263): 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
09-11 11:02:19.365: E/AndroidRuntime(1263): 	at dalvik.system.NativeStart.main(Native Method)




My Program

public class Calc extends Activity
{

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		// TODO Auto-generated method stub
		super.onCreate(savedInstanceState);
		setContentView(R.layout.calc);
		this.myLogin();
	}
	
	private EditText tx1,tx2,tx3;
	private Button b1;
	private TextView tv1;
	
	public void myLogin()
	{
		tx1 = (EditText)findViewById(R.id.editText1);
		tx2 = (EditText)findViewById(R.id.editText2);
		tx3 = (EditText)findViewById(R.id.editText3);
		b1 = (Button)findViewById(R.id.button1);
		tv1 =(TextView)findViewById(R.id.textView1);
		
		b1.setOnClickListener(new OnClickListener() {			
			@Override
			public void onClick(View v) {
				// TODO Auto-generated method stub
				
				int no1 = Integer.parseInt(tx1.getText().toString());
				int no2 = Integer.parseInt(tx3.getText().toString());
				System.out.println(no1+no2);
				String opt = tx2.getText().toString();
				System.out.println(opt);
				
				if (opt.equals("+")) {
					tv1.setText("Result : "+(no1+no2));
				} else {
					if (opt.equals("-")) {
					tv1.setText("Result : "+(no1-no2));
					} else {
						if (opt.equals("*")) {
							tv1.setText("Result : "+(no1*no2));
						} else {
							if (opt.equals("/")) {
								try {
									tv1.setText("Result : "+(no1/no2));	
								} catch (Exception e) {
									tv1.setText(e.getMessage());
								}								
							} else {
								tv1.setText("Sorry Wrong Operator");	
							}
						}
					}
				}
			}
		});
	}
}

解决方案

1.onClick(Calc.java:40) 09-11 11:02:19.365: E/AndroidRuntime(1263): at android.view.View.performClick(View.java:4438) 09-11 11:02:19.365: E/AndroidRuntime(1263): at android.view.View


PerformClick.run(View.java:18422) 09-11 11:02:19.365: E/AndroidRuntime(1263): at android.os.Handler.handleCallback(Handler.java:733) 09-11 11:02:19.365: E/AndroidRuntime(1263): at android.os.Handler.dispatchMessage(Handler.java:95) 09-11 11:02:19.365: E/AndroidRuntime(1263): at android.os.Looper.loop(Looper.java:136) 09-11 11:02:19.365: E/AndroidRuntime(1263): at android.app.ActivityThread.main(ActivityThread.java:5017) 09-11 11:02:19.365: E/AndroidRuntime(1263): at java.lang.reflect.Method.invokeNative(Native Method) 09-11 11:02:19.365: E/AndroidRuntime(1263): at java.lang.reflect.Method.invoke(Method.java:515) 09-11 11:02:19.365: E/AndroidRuntime(1263): at com.android.internal.os.ZygoteInit


MethodAndArgsCaller.run(ZygoteInit.java:779) 09-11 11:02:19.365: E/AndroidRuntime(1263): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595) 09-11 11:02:19.365: E/AndroidRuntime(1263): at dalvik.system.NativeStart.main(Native Method)




My Program

public class Calc extends Activity
{

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		// TODO Auto-generated method stub
		super.onCreate(savedInstanceState);
		setContentView(R.layout.calc);
		this.myLogin();
	}
	
	private EditText tx1,tx2,tx3;
	private Button b1;
	private TextView tv1;
	
	public void myLogin()
	{
		tx1 = (EditText)findViewById(R.id.editText1);
		tx2 = (EditText)findViewById(R.id.editText2);
		tx3 = (EditText)findViewById(R.id.editText3);
		b1 = (Button)findViewById(R.id.button1);
		tv1 =(TextView)findViewById(R.id.textView1);
		
		b1.setOnClickListener(new OnClickListener() {			
			@Override
			public void onClick(View v) {
				// TODO Auto-generated method stub
				
				int no1 = Integer.parseInt(tx1.getText().toString());
				int no2 = Integer.parseInt(tx3.getText().toString());
				System.out.println(no1+no2);
				String opt = tx2.getText().toString();
				System.out.println(opt);
				
				if (opt.equals("+")) {
					tv1.setText("Result : "+(no1+no2));
				} else {
					if (opt.equals("-")) {
					tv1.setText("Result : "+(no1-no2));
					} else {
						if (opt.equals("*")) {
							tv1.setText("Result : "+(no1*no2));
						} else {
							if (opt.equals("/")) {
								try {
									tv1.setText("Result : "+(no1/no2));	
								} catch (Exception e) {
									tv1.setText(e.getMessage());
								}								
							} else {
								tv1.setText("Sorry Wrong Operator");	
							}
						}
					}
				}
			}
		});
	}
}


这篇关于在Android中出现致命异常的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆