Javaobject类型转换为int类型
在struts1的action类中设置了String类型的变量,int类型的变量,把他们放在request中,在jsp页⾯获取的时候object类型装换位int类
型,(Attribute("")没错,但是同样的⽅式转换String类型的变量的时候,报了异常
java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Integer,很奇怪Attribute("xx")返回object
类型,怎么会报这样的异常呢?
最后只能把String类型变量转化为int类型,然后才设置request中。
代码:
public ActionForward listjob(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
//jobFormbean job=(jobFormbean)form;
DbManager dbmgr=new DbManager();
String  Parameter("orgid");
//分页代码开始
String page = Parameter("curpage");
String countsql="select count(*) from ln_job where orgid='"+orgid+"'";
int wscount(countsql);
if (page == null) {
page = "1";
}
if (page.equals("") || page.equals("0")) {
page = "1";
}
PageManager pmg = new PageManager();
pmg.setrowsPerPage(15);
pmg.setpagenum(Integer.parseInt(page));
pmg.setmaxRowCount(rowcount);
int rowsStart = wsStart();
int rowsEnd = wsEnd();
int maxPage = axPage();
int nextpage = tpage(Integer.parseInt(page));
//分页代码结束
String sql="select * from (select jobid,jobname,orgid,row_number() over(order by jobid asc) rn from ln_job where orgid='"+orgid+"' ) where  rn>="+rowsStart+" an  System.out.println(sql);
//System.out.println(sql);
Query(sql);
List<Job> list=new ArrayList<Job>();
()){
Job og=new Job();
og.Int("jobid"));
og.String("jobname"));
og.String("orgid"));
list.add(og);
}
}
sql="select orgname from ln_org where orgid='"+orgid+"'order by orgid asc";bigdecimal转换为integer
Query(sql);
String orgname="";
()){
String(1);
}
request.setAttribute("currentPage", Integer.parseInt(page));
request.setAttribute("nextpage", nextpage);
request.setAttribute("maxPage", maxPage);
request.setAttribute("list", list);
request.setAttribute("orgid",orgid);
request.setAttribute("orgname",orgname);
return mapping.findForward("list");
}
写道
<action path="/user/manage/job" name="JobFormbean" scope="request" type="com.hkr.ly.action.job.JobManage" parameter="method">
<forward name="list" path="/dtynwebmain/job/joblist.jsp"/>
</action>
在joblist.jsp页⾯中
<%
int nextpage=(Attribute("nextpage");
int maxPage=(Attribute("maxPage");
int currentPage=(Attribute("currentPage");
int fontpage=0;
if(currentPage>1){
fontpage=currentPage-1;
}
%>
总结:
String转换为int类型的⽅法:
1. Integer.parseInt([String])
2.Integer.valueOf([String]).intValue();
3.Integer.decode([String]):将 String 解码为 Integer。接受通过以下语法给出的⼗进制、⼗六进制和⼋进制数字
例如:
int a=Integer.decode("0144"); //⼋进制转换结果为100
int b=Integer.decode("123");//⼗进制转换结果为123
int c=Integer.decode("0x123");//16进制转换结果为291
注:Integer.decode([String])加负号也可以转换,不过字符串不能有空格。否则报NumberFormatException异常
注: 字串转成 Double, Float, Long 的⽅法⼤同⼩异.
int转换为String类型⽅法:
1.String s = String.valueOf(i);
2.String s = String(i);
3. String s = "" + i;
不常⽤的:
1.Integer. toBinaryString(int i) :以⼆进制(基数 2)⽆符号整数形式返回⼀个整数参数的字符串表⽰形式。
2.Integer. toHexString(int i) :以⼗六进制(基数 16)⽆符号整数形式返回⼀个整数参数的字符串表⽰形式。
3.Integer. toOctalString(int i):以⼋进制(基数 8)⽆符号整数形式返回⼀个整数参数的字符串表⽰形式。
注: Double, Float, Long 转成字串的⽅法⼤同⼩异.
object类型转换为int类型:
1.如果object是byte,short,int,char类型⽣成的,那么不⽤转换直接赋值就ok了。
2.如果object是字符串类型⽣成的,先把object转换为String类型的,再把String类型转换为int类型。
例如.
String myInt="123";
Object os=myInt;
int b=Integer.parseInt((String)os);//还可以os.toString()
3.如果object是float,double,long类型⽣成的,思路和上⾯⼀样,先把object转换为相应的数据类型,然后再转换为int类型。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。