html中用?字符在页面间传值的误区以及java中字符串与数字的转换

在做毕设时一点小错误却困扰了半天,页面传值代码如下,其中要传的id是个int型的:

<td><a href="joindeal.jsp?id= <%=id%>">报名</a></td>

通过jsp语法我们知道在接受页面需要用以下代码接受该值(接受后返回的是一个String型的值)

String id=request.getParameter("id");

但接下来的处理我们需要用int型的id的值,如何将字串Sring转成整数int,用到的是方法Integer.parseInt(id);

虽然eclipse没有报错,但打开页面时,页面提示Integer.parseInt(id)这句语法错误,我以为这个方法不好用,又换了种方法

但都不好用,这就有点想不明白了,但仔细看地址栏的传值格式,发现在id=后面有个空格,这下就明白了

传值时穿的字符串是空格+数字,这个字符串就不是字串了,所以用上面的方法就不会转化成想要的数字

改正:<td><a href="joindeal.jsp?id=<%=id%>">报名</a></td>  //把id=后的空格去掉就好使了,传过去的就是字串,用上面方法就会转化成对应的数字

/////////

另外:String字串与int数字间的转化如下

1.String字串转int数字

A. 有两个方法:

1). int i = Integer.parseInt([String]); 或
i = Integer.parseInt([String],[int radix]);

2). int i = Integer.valueOf(my_str).intValue();

注: 字串转成 Double, Float, Long 的方法大同小异.


2 如何将整数 int 转换成字串 String ?


A. 有叁种方法:

1.) String s = String.valueOf(i);

2.) String s = Integer.toString(i);

3.) String s = "" + i;

注: Double, Float, Long 转成字串的方法大同小异.

原文地址:https://www.cnblogs.com/wcher/p/8889133.html