jsp中out.write和out.print方法的区别
在jsp页面中分别使用out.write()和out.print(),传入1的整型,
<%
out.write(1);
out.print("<br>");
out.print(1);
%>
结果输出为
当我用out.write()方法输出一个int型变量时,输出的是对应的ASCII值,一开始认为是需要强制转换数据类型,但是操作后发现这样并没有什么用,依旧是刚才的输出结果。后来使用out.print()这个方法重新输出后问题得到了解决,由此联想到这两个方法间的区别。
out.write()是字节输出流的方法,out.print()是字符输出流的方法。前者只能输出字符,字符串等有关字符的数据,后者将所有数据都转换为字符串的形式输出。
上图中out.print(1):打印出的效果是为1;而对于out.write(1):打印出来的是乱码.原因何在?
因为:在out.print(1)中直接将1转化为了字符串”1”,所以显示出来时1;而对于out.write(1)中是将1转换为了对应的ASCII表中的字符
out.print()方法,可以输出java对象。 //print为打印,可以打印任何东西
out.write()方法,只能输出字符串。 //write为写字,只能写出字符