问题描述
publicclassTest{publicstaticvoidmain(String[]args){//TODO自动生成方法存根String[]a=newString[12];args=newString[12];if(args[0].length()<=0)return;System.out.println("输入的月份为:"+args[0]);intmonth=8;try{month=Integer.parseInt(args[0]);}catch(NumberFormatExceptionnfe){System.out.println("输入的格式错误!");return;}switch(month){case1:System.out.println("january");break;case2:System.out.println("february");break;case3:System.out.println("march");break;case4:System.out.println("april");break;case5:System.out.println("may");break;case6:System.out.println("june");break;case7:System.out.println("july");break;case8:System.out.println("august");break;case9:System.out.println("september");break;case10:System.out.println("october");break;case11:System.out.println("november");break;case12:System.out.println("december");break;default:System.out.println("输入的月份不存在!");}}}
解决方案
解决方案二:
args=newString[12];这里args是一个参数,他本身就是一个实例数组可以直接引用你在此新实例一个对象,没对他赋值args[0]当然为null,你在调用他的length当然为操作空指针
解决方案三:
if(args.length<=0)//if(args[0].length()<=0)return;
解决方案四:
呵呵,正如#1#2所说,String[]args=newnewString[12];内部存放的知识12个String的引用,并不是实例!你直接调用里面的方法或者属性当然会报NullPointer,你应该先初始化,例如:args[0]=newString("string");args[0].length()
解决方案五:
一楼所言是也
解决方案六:
引用1楼lxd520123的回复:
args=newString[12];这里args是一个参数,他本身就是一个实例数组可以直接引用你在此新实例一个对象,没对他赋值args[0]当然为null,你在调用他的length当然为操作空指针
up!!!
解决方案七:
引用1楼lxd520123的回复:
args=newString[12];这里args是一个参数,他本身就是一个实例数组可以直接引用你在此新实例一个对象,没对他赋值args[0]当然为null,你在调用他的length当然为操作空指针
支持下。。。