oprationType.javapackage com.hl.mycaculater2;import java.math.BigDecimal;public enum oprationType { Add,Sub,Mul,Div; public String Values(String number1,String number2) { BigDecimal num1 = new BigDecimal(number1); BigDecimal num2 = new BigDecimal(number2); BigDecimal num = BigDecimal.valueOf(0);
switch (this) { case Add: num = num1.add(num2); break; case Sub: num = num1.subtract(num2); break; case Mul: num = num1.multiply(num2); break; case Div: num = num1.divide(num2); break; } return num.stripTrailingZeros().toString(); }}
12-09 08:29:18.574: D/AndroidRuntime(1386): Shutting down VM 12-09 08:29:18.586: W/dalvikvm(1386): threadid=1: thread exiting with uncaught exception (group=0xa4d40b20) 12-09 08:29:18.706: D/dalvikvm(1386): GC_FOR_ALLOC freed 104K, 5% free 3421K/3580K, paused 31ms, total 50ms 12-09 08:29:18.706: E/AndroidRuntime(1386): FATAL EXCEPTION: main 12-09 08:29:18.706: E/AndroidRuntime(1386): Process: com.hl.mycaculater2, PID: 1386 12-09 08:29:18.706: E/AndroidRuntime(1386): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.hl.mycaculater2/com.hl.mycaculater2.MainActivity}: java.lang.NullPointerException 12-09 08:29:18.706: E/AndroidRuntime(1386): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2184) 12-09 08:29:18.706: E/AndroidRuntime(1386): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2233) 12-09 08:29:18.706: E/AndroidRuntime(1386): at android.app.ActivityThread.access$800(ActivityThread.java:135) 12-09 08:29:18.706: E/AndroidRuntime(1386): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196) 12-09 08:29:18.706: E/AndroidRuntime(1386): at android.os.Handler.dispatchMessage(Handler.java:102) 12-09 08:29:18.706: E/AndroidRuntime(1386): at android.os.Looper.loop(Looper.java:136) 12-09 08:29:18.706: E/AndroidRuntime(1386): at android.app.ActivityThread.main(ActivityThread.java:5001) 12-09 08:29:18.706: E/AndroidRuntime(1386): at java.lang.reflect.Method.invokeNative(Native Method) 12-09 08:29:18.706: E/AndroidRuntime(1386): at java.lang.reflect.Method.invoke(Method.java:515) 12-09 08:29:18.706: E/AndroidRuntime(1386): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:785) 12-09 08:29:18.706: E/AndroidRuntime(1386): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601) 12-09 08:29:18.706: E/AndroidRuntime(1386): at dalvik.system.NativeStart.main(Native Method) 12-09 08:29:18.706: E/AndroidRuntime(1386): Caused by: java.lang.NullPointerException 12-09 08:29:18.706: E/AndroidRuntime(1386): at com.hl.mycaculater2.MainActivity.onCreate(MainActivity.java:45) 12-09 08:29:18.706: E/AndroidRuntime(1386): at android.app.Activity.performCreate(Activity.java:5231) 12-09 08:29:18.706: E/AndroidRuntime(1386): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087) 12-09 08:29:18.706: E/AndroidRuntime(1386): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2148) 12-09 08:29:18.706: E/AndroidRuntime(1386): ... 11 more 12-09 08:31:47.986: I/Process(1386): Sending signal. PID: 1386 SIG: 9
Add,Sub,Mul,Div;
public String Values(String number1,String number2) {
BigDecimal num1 = new BigDecimal(number1);
BigDecimal num2 = new BigDecimal(number2);
BigDecimal num = BigDecimal.valueOf(0);
switch (this) {
case Add:
num = num1.add(num2);
break;
case Sub:
num = num1.subtract(num2);
break;
case Mul:
num = num1.multiply(num2);
break;
case Div:
num = num1.divide(num2);
break;
}
return num.stripTrailingZeros().toString();
}}
12-09 08:29:18.586: W/dalvikvm(1386): threadid=1: thread exiting with uncaught exception (group=0xa4d40b20)
12-09 08:29:18.706: D/dalvikvm(1386): GC_FOR_ALLOC freed 104K, 5% free 3421K/3580K, paused 31ms, total 50ms
12-09 08:29:18.706: E/AndroidRuntime(1386): FATAL EXCEPTION: main
12-09 08:29:18.706: E/AndroidRuntime(1386): Process: com.hl.mycaculater2, PID: 1386
12-09 08:29:18.706: E/AndroidRuntime(1386): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.hl.mycaculater2/com.hl.mycaculater2.MainActivity}: java.lang.NullPointerException
12-09 08:29:18.706: E/AndroidRuntime(1386): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2184)
12-09 08:29:18.706: E/AndroidRuntime(1386): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2233)
12-09 08:29:18.706: E/AndroidRuntime(1386): at android.app.ActivityThread.access$800(ActivityThread.java:135)
12-09 08:29:18.706: E/AndroidRuntime(1386): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196)
12-09 08:29:18.706: E/AndroidRuntime(1386): at android.os.Handler.dispatchMessage(Handler.java:102)
12-09 08:29:18.706: E/AndroidRuntime(1386): at android.os.Looper.loop(Looper.java:136)
12-09 08:29:18.706: E/AndroidRuntime(1386): at android.app.ActivityThread.main(ActivityThread.java:5001)
12-09 08:29:18.706: E/AndroidRuntime(1386): at java.lang.reflect.Method.invokeNative(Native Method)
12-09 08:29:18.706: E/AndroidRuntime(1386): at java.lang.reflect.Method.invoke(Method.java:515)
12-09 08:29:18.706: E/AndroidRuntime(1386): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:785)
12-09 08:29:18.706: E/AndroidRuntime(1386): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601)
12-09 08:29:18.706: E/AndroidRuntime(1386): at dalvik.system.NativeStart.main(Native Method)
12-09 08:29:18.706: E/AndroidRuntime(1386): Caused by: java.lang.NullPointerException
12-09 08:29:18.706: E/AndroidRuntime(1386): at com.hl.mycaculater2.MainActivity.onCreate(MainActivity.java:45)
12-09 08:29:18.706: E/AndroidRuntime(1386): at android.app.Activity.performCreate(Activity.java:5231)
12-09 08:29:18.706: E/AndroidRuntime(1386): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)
12-09 08:29:18.706: E/AndroidRuntime(1386): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2148)
12-09 08:29:18.706: E/AndroidRuntime(1386): ... 11 more
12-09 08:31:47.986: I/Process(1386): Sending signal. PID: 1386 SIG: 9
12-09 08:29:18.706: E/AndroidRuntime(1386): at com.hl.mycaculater2.MainActivity.onCreate(MainActivity.java:45)明显的空异常啊。
这句有问题