out.print和out.write

这是一个JSP页面:

Java代码  

  1. <%@ page language="java" import="java.util.*"  %>
  2. <%@ page pageEncoding="UTF-8" isELIgnored="false" %>
  3. <%@ page import="java.util.Date" %>
  4. <html>
  5. <head>
  6. <title>  </title>
  7. </head>
  8. <body>
  9. <h1>现在时间:</h1>
  10. <%=new Date() %>
  11. </body>
  12. </html>

转译后生成的servlet,对应的body中,有以下代码:

Java代码  

  1. out.write("<h1>现在时间:</h1>\n");
  2. 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中定义的,print方法是在子类JspWriter中定义的. 
重载的print方法可以将各种类型的数据转换成字符串的形式输出. 
而重载的write方法只能输出字符/字符数组/字符串等与字符相关的数据.

而且如果使用这两种方法输出值为null的字符串对象, 
那么print方法输出的结果是"null", 
而write方法则会抛出NullPoiterException异常.

out.print和out.write

时间: 2024-10-12 13:04:19

out.print和out.write的相关文章

python print及格式化

print(value,sep=' ',end='\n',file=sys.stdout, flush=False) sep=' '默认空格 print('hello','world') #hello world print('hello','world',sep='|') #hello|world end='\n'默认换行符 print('hello') print('world') #hello #world print('hello',end=' ') print('world') #he

Python学习笔记(二)-- print语句

print语句 print语句可以向屏幕上输出指定的文字.比如输出'hello, world',用代码实现如下: >>> print 'hello, world' 注意: 1.当我们在Python交互式环境下编写代码时,>>>是Python解释器的提示符,不是代码的一部分. 2.当我们在文本编辑器中编写代码时,千万不要自己添加>>>. print语句也可以跟上多个字符串,用逗号“,”隔开,就可以连成一串输出: >>> print 'T

Python的print

Python的print是一条语句 or 是一个方法??? Python的3000版本(3.0版本)以前,不包括3000版本,print默认应该是被当成语句使用的. 我们可以通过type(print)查看一下print的类型: >>> type(print) File "<stdin>", line 1 type(print) ^ SyntaxError: invalid syntax >>> 报错了,也就是说print没有类型. 不过在

python基础之“Print”

1.python怎么在控制台实现换行效果? 加个"\n"就是回车的意思 print ("hello \n Word") 2.python中等号是赋值的意思 a = "一桶水" print(a) a可以看出一块存储区域,a里面放了一桶水 当然也可以把水倒掉里面放一桶油,A就被从新赋值了 a= "一桶油" print (a) 现在的a里面就是一桶油了,之前一桶水的a就被覆盖掉了 3.字符串是可以相加的 a = "hell

response.getWriter().write()与out.print()的区别

1.首先介绍write()和print()方法的区别:  (1).write():仅支持输出字符类型数据,字符.字符数组.字符串等  (2).print():可以将各种类型(包括Object)的数据通过默认编码转换成bytes字节形式,这些字节都通过write(int c)方法被输出 2.介绍response.getWriter()和out的区别:  (1).out和response.getWriter的类不一样,一个是JspWriter,另一个是java.io.PrintWriter.  (2

response.getWriter().write()和 response.getWriter().print()的区别

异步上传图片的代码.发现里面用了response.getWriter().print(),故联想到response.getWriter().writer(),经过一番api的查找与实操,总结如下: response.getWriter()返回的是PrintWriter,这是一个打印输出流. response.getWriter().print(),不仅可以打印输出文本格式的(包括html标签),还可以将一个对象以默认的编码方式转换为二进制字节输出 response.getWriter().wri

print函数

1\直接输出数值和字符串类型: 1 print(2) 2 print('hello world') 2\

【Python3】print用逗号,write用加号

print("\n", Gb[u], "\t",IDlist[u],end="") f.write("\n"+ Gb[u]+"\t"+IDlist[u])  

echo,print(),print_r(),sprintf(),var_dump()的区别

PHP中几个输出函数echo,print(),print_r(),sprintf(),var_dump()的区别 1:echo:是语句不是函数,没有返回值,可输出多个变量值,不需要圆括号.不能输出数组和对象,只能打印简单类型(如int,string). 2:print:是语句不是函数,有返回值 1 ,只能输出一个变量,不需要圆括号.不能输出数组和对象,只能打印简单类型(如int,string). 3:print_r:是函数,可以打印复合类型,例如:stirng.int.float.array.o

File类--System.out.print(Object obj)的理解

一.File 类(java.io) 概述:Java中使用File类来表示文件或者文件夹对象!     抽象路径名:描述文件或文件夹时,使用的路径符号,就是一个对象的字符串表示形式,如"c:\\";     绝对路径:绝对位置开始的路径;     相对路径:相对位置开始的路径; 构造方法:     File(String pathname)     File(String parent, String child)     File(File parent, String child)