在Form.java中定义数组后,存放jsp页面自动生表格对应的属性值,在action.java中取值显示为[Ljava.lang.String;@59e205distype解决思路
在Form.java中定义数组后,存放jsp页面自动生表格对应的属性值,在action.java中取值显示为[Ljava.lang.String;@59e205distype
我的程序是struts框架,问题如下
在jsp页面已经实现自动添加行,我添加了5行,其中一个td设为 <td> <input type= "text " name= "distype "> </td>
对应的form.java中有 private String distype[]=new String[0];
public String[] getDistype() {
return distype;
}
public void setDistype(String[] distype) {
this.distype = distype;
}
在action.java中,我首先从form中取值
String[] distype = predictPraForm.getDistype();
System.out.println(distype.length);
System.out.println(distype);
结果显示为5和[Ljava.lang.String;@59e205distype
这说明数组中已经5个值了,但是显示出来就是不对。对于distype这个变量也没有split这个方法,我把distype重新付给一个String input[]=new String[5]数组还是有错!!!
请高手帮忙!!!
------解决方案--------------------
distype 是一个对象不能直接输入,输出的只是它的 toString() 方法:
“[”表示是一个一维数组,“L”表示是一个对象类型,“java.lang.String;”表示是一个 String 对象“59e205”表示这个对象的 hashcode。
要输入内容的话,采用以下的代码:
for(String s : distype) {
System.out.println(s);
}
我的程序是struts框架,问题如下
在jsp页面已经实现自动添加行,我添加了5行,其中一个td设为 <td> <input type= "text " name= "distype "> </td>
对应的form.java中有 private String distype[]=new String[0];
public String[] getDistype() {
return distype;
}
public void setDistype(String[] distype) {
this.distype = distype;
}
在action.java中,我首先从form中取值
String[] distype = predictPraForm.getDistype();
System.out.println(distype.length);
System.out.println(distype);
结果显示为5和[Ljava.lang.String;@59e205distype
这说明数组中已经5个值了,但是显示出来就是不对。对于distype这个变量也没有split这个方法,我把distype重新付给一个String input[]=new String[5]数组还是有错!!!
请高手帮忙!!!
------解决方案--------------------
distype 是一个对象不能直接输入,输出的只是它的 toString() 方法:
“[”表示是一个一维数组,“L”表示是一个对象类型,“java.lang.String;”表示是一个 String 对象“59e205”表示这个对象的 hashcode。
要输入内容的话,采用以下的代码:
for(String s : distype) {
System.out.println(s);
}