注册 登录
编程论坛 J2EE论坛

获取文本框中的数据,转换为整型并存入数组

princehds1 发布于 2013-04-09 13:46, 1510 次点击
程序代码:

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www. http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>基础排序功能</title>
</head>
<body>
<p>请在下面的5个文本框中依次输入5个数:</p>
<form name="form1" method="post" action="">
  <p>1、
    <input name="num" type="text" id="num">
  </p>
  <p>2、
    <input name="num" type="text" id="num">
  </p>
  <p>3、
    <input name="num" type="text" id="num">
  </p>
  <p>4、
    <input name="num" type="text" id="num">
  </p>
  <p>5、
    <input name="num" type="text" id="num">
  </p>
  <p>
            
    <input name="btnSort" type="submit" id="btnSort" value="排序">
    <input name="btnSort2" type="reset" id="btnSort2" value="取消">
  </p>
</form>
您输入的数字分别是:
<%
    int arr[] = new int[5];
    String[] array=request.getParameterValues("num");
    for(int i=0;i<array.length;i++)
    {
        arr[i]=Integer.parseInt(array[i]);
    }
%>
</body>
</html>
以上代码的作用是想获取文本框中的数据存入数组,运行时报错,请问是什么原因?
8 回复
#2
hhwz2013-04-09 13:54
当你首次进入这个页面的时候

 int arr[] = new int[5];
    String[] array=request.getParameterValues("num");
    for(int i=0;i<array.length;i++)
    {
        arr[i]=Integer.parseInt(array[i]);
    }
array是空的  不能进行parseInt转换
#3
princehds12013-04-09 14:15
回复 2楼 hhwz
版主大人,那我应该怎么办呢?刚刚接触这个,不是很理解....
#4
princehds12013-04-09 14:43
回复 2楼 hhwz
我将每个文本框的默认值设置为0,还是出错啊

for(int i=0;i<array.length;i++)

提示这一句有问题

是什么原因造成的呢?
#5
hhwz2013-04-09 14:54
你可以用一个JSP做输入的
然后提交到一个处理的JSP
最后在返回到输入的JSP


#6
princehds12013-04-10 08:28
回复 5楼 hhwz
我用表单提交在另外一个页面处理,已经搞定了~

如果是用<jsp:include page="sort.jsp">
</jsp:include>
那应该怎么做呢?
需要用到param动作组件传递数组吗?怎么传呢?
#7
hhwz2013-04-10 10:13
<jsp:include page="sort.jsp">
是加载这个JSP的代码到当前JSP
如果是做业务处理的JSP还是会报错的
#8
princehds12013-04-10 16:01
回复 7楼 hhwz
好的,懂了
非常感谢
大神,可以加你QQ吗?
#9
hhwz2013-04-11 10:08
还是在论坛或者发消息问吧,java本来就没什么人气加点人气也好
1