问题:
这是一个JSP页面:
<%@ page language="java" import="java.util.*" %>
<%@ page pageEncoding="UTF-8" isELIgnored="false" %>
<%@ page import="java.util.Date" %>
<html>
<head>
<title> </title>
</head>
<body>
<h1>现在时间:</h1>
<%=new Date() %>
</body>
</html>
转译后生成的servlet,对应的body中,有以下代码:
out.write("<h1>现在时间:</h1>\n");
out.print( new Date());
思考:
<%= %>表达式代表的是什么? 为什么 new Date()后,没有 “;”(分号)?
servlet中,out.write() 和 out.print() 有何区别?
解答:
There is a method print(Object). There is no method write(Object)
write(String) exists however.
serch the javaAPI you will find
------------------------------------------
(java中)有这个方法:print(Object),没有这个方法:write(Object)
但是却有这个方法:write(String)
查找javaAPI,你便会发现。
总结:
out.print()方法,可以输出一个java对象;
out.write()方法,只能输入一个字符串。
参考资料:
jsp中的out对象是JspWriter类型的.而JspWriter继承了java.io.Writer .
out.write() 是在在父类Writer中定义的
out.print() 是在子类JspWriter中定义的.
重写的 print 方法可以将各种类型的数据转换成字符串的形式输出.
而重载的 write 方法只能输出字符/字符数组/字符串等与字符相关的数据.
而且如果使用这两种方法输出值为null的字符串对象,
那么print方法输出的结果是"null",
而write方法则会抛出NullPoiterException异常.
-
转载请注明,
原文出处:http://lixh1986.iteye.com/blog/1757126
引用:
http://bbs.csdn.net/topics/300007142
http://wenwen.soso.com/z/q152174496.htm
--
分享到:
相关推荐
在JSP中,out对象提供了两个主要的方法:print()和write(),它们都可以用于将数据输出到客户端,但它们之间存在着一些本质的区别。 首先,从概念上来看,out对象的write方法是基于字节输出流的方法,而print方法则...
在Java编程语言中,`out.print()` 和 `out.write()` 是两种常见的用于向输出流写入数据的方法,尤其是在Servlet和JSP(JavaServer Pages)开发中。这两个方法都是`javax.servlet.jsp.JspWriter`接口的一部分,通常在...
System.out.print("create fail!"); } } public void Ccreateconnect(String ip) { try { socket=new Socket(ip,9999);//创建套接字 } catch(Exception e) { System.out.print("创立连接失败!"); } ...
Ajax的服务器端用PrintWriter out=resp.getWriter()来响应数据的时候,out.print(0)、out.print(1)来表示成功或失败,而不用out.write是有原因的,首先来看一下print和write两者的异同点。 共同点是:两者都不刷新...
System.out.print("a="+a+" b="+b); 折半查找 public class Test { public static int[] data = { 12, 15, 20, 10, 19, 3, 89, 32, 39, 47, 55 }; // 原始数据 public static int counter = 1; // 计数器 ...
out.write(buffer, 0, bytesRead); } } catch (IOException e) { e.printStackTrace(); } finally { try { in.close(); out.close(); } catch (IOException e) { e.printStackTrace(); } } } } ``` 3. ...
### Python Workout: 50 Essential Exercises (2020) #### Overview The "Python Workout: 50 Essential Exercises" is a comprehensive guide designed to help beginners and intermediate Python programmers ...
外层循环控制行数,内层循环控制列数,通过`System.out.print()`函数输出当前行与列相乘的结果,每行结束后换行,形成标准的乘法表格式。 ```java public class XiaoZi { public static void main(String[] args) ...
如果写文本文件,推荐使用PrintWriter,当创建好PrintWriter对象后,调用其println和print方法可以将字符串一行行的写入到文本文件,使用方法与System.out.println, System.out.print完全一样 具体使用方法,请见...
Java抓包工具及测试实例源码package netPackage; /******************* * JpcapTip.java */ //import java.net.NetworkInterface; //import java.net.InetAddress; //import java.net.... System.out.print
System.out.print("请输入字符串:"); String inputStr = dis.readUTF(); System.out.print("请输入整数:"); int inputInt = dis.readInt(); dos.writeUTF("输入的字符串是:" + inputStr); dos.writeInt...
Java的实现与C#类似,但使用`System.out.print`和`System.out.println`方法: ```java public class MultiplicationTable { public static void main(String[] args) { for (int i = 1; i ; i++) { for (int j =...
System.out.print("--" + s); } System.out.println(); } } catch (IOException e) { // TODO 自动生成 catch 块 e.printStackTrace(); } } ...
System.out.print(String.valueOf(ch, 0, num)); // 方法1:转换为字符串 System.out.println(); System.out.print(new String(ch, 0, num)); // 方法2:转换为字符串 } // 测试返回值num表示数组长度 num = ...
out.write(c); System.out.print((char) c); } in.close(); out.close(); } catch (IOException e) { System.out.println("文件不能打开"); } } } ``` 错误处理 在编程中,错误处理是非常重要的。Java ...
`System.out.print()`用于在控制台上输出,而`FileWriter`类则用来写入文件。`try-with-resources`语句确保在写入完成后正确关闭文件流,防止资源泄漏。 注意到压缩包中有一个名为"sy9 - 副本.java"的文件,这可能...
import jxl.write.Label; import jxl.write.Number; import jxl.write.WritableSheet; import jxl.write.WritableWorkbook; public class TestExcel { public static void main(String[] args) { // 创建 Excel ...