打印流:

打印流是输出信息最方便的类,注意包含字节打印流PrintStream和字符打印流:PrintWriter。打印流提供了非常方便的打印功能,

可以打印任何类型的数据信息,例如:小数,整数,字符串。

回顾:

之前打印信息需要使用OutputStream但是这样,所有数据输出会非常麻烦,String-->byte[],打印流中可以方便进行输出,

PrintStream类中常用方法:

在这个类中定义了很多print()和println()方法,System.out.print()方法可以打印任何数据类型。

构造方法:

public PrintStream(OutputStream out)  --指定输出位置

此构造方法接收OutputStream的子类,

打印流好处:

通过定义的构造方法可以发现,有一个构造方法可以直接接收OutputStream类的实例,与OutputStream相比起来,PrintStream可以更方便的输出数据,

相当于把OutputStream类重新包装了一下,使之输出更方便。

实例1:使用printStream输出信息。

package 类集;
import java.io.* ;
public class PrintDemo01{
public static void main(String arg[]) throws Exception{
PrintStream ps = null ; // 声明打印流对象
// 如果现在是使用FileOuputStream实例化,意味着所有的输出是向文件之中
ps = new PrintStream(new FileOutputStream(new File("d:" + File.separator + "test.txt"))) ;
ps.print("hello ") ;
ps.println("world!!!") ;
ps.print("1 + 1 = " + 2) ;
ps.close() ;
}
};

执行结果:

也就是说,将FileoutputStream类的功能进行了包装一下。这样的设计在JAVA中称为装饰设计模式。

格式化输出:

JAVA对PrintStream功能进行了扩充,增加了格式化输出功能。直接使用Print即可。但是输出的时候需要指定输出的数据类型。

这类似C语言。

实例2:代码如下:

package 类集;
import java.io.* ;
public class PrintDemo01{
public static void main(String arg[]) throws Exception{
PrintStream ps = null ; // 声明打印流对象
// 如果现在是使用FileOuputStream实例化,意味着所有的输出是向文件之中
ps = new PrintStream(new FileOutputStream(new File("d:" + File.separator + "test.txt"))) ;
String name = "李兴华" ; // 定义字符串
int age = 30 ; // 定义整数
float score = 990.356f ; // 定义小数
char sex = 'M' ; // 定义字符
ps.printf("姓名:%s;年龄:%d;成绩:%f;性别:%c",name,age,score,sex) ;
ps.close() ;
}
};

执行结果:

如果觉得要使用很多%s,%d,%c无法记住的话,实例可以全部使用“%s”表示。

import java.io.* ;
public class PrintDemo03{
public static void main(String arg[]) throws Exception{
PrintStream ps = null ; // 声明打印流对象
// 如果现在是使用FileOuputStream实例化,意味着所有的输出是向文件之中
ps = new PrintStream(new FileOutputStream(new File("d:" + File.separator + "test.txt"))) ;
String name = "李兴华" ; // 定义字符串
int age = 30 ; // 定义整数
float score = 990.356f ; // 定义小数
char sex = 'M' ; // 定义字符
ps.printf("姓名:%s;年龄:%s;成绩:%s;性别:%s",name,age,score,sex) ;
ps.close() ;
}
};

最新文章

  1. ThinkPHP 隐藏URL中的 index.php
  2. PhpStorm设置编码
  3. HDOJ(1348)二维凸包
  4. 【UWP】FlipView绑定ItemsSource,Selectedindex的问题
  5. 命令行工具cmder
  6. thymeleaf学习
  7. 【WebForm】Repeater 序列号 在翻页情况下自增
  8. 使用 Apache MINA2 实现 Web 系统的消息中间件
  9. NGINX小技巧--将所有目录和目录下所有文件分别给与不同的权限
  10. java properties 对list的支持
  11. 设置vs环境
  12. RPO(Relative Path Overwrite)
  13. centos/linux 禁止root用户远程登录
  14. EF Core新增迁移时无法加载程序集“System.ValueTuple”的错误
  15. centos 升级python3
  16. [svc]find+xargs/sed&sed后向引用+awk多匹配符+过滤行绝招总结&&产生随机数
  17. leetcode 167 two sum II
  18. android抽屉效果
  19. Java编程的逻辑 (68) - 线程的基本协作机制 (下)
  20. maven 使用之自动编译热部署设置

热门文章

  1. CWnd创建WS_CHILD和WS_POPUP窗口的不同
  2. AC日记——pigs poj 1149
  3. centos6.5 phpmyadmin 您应升级到 MySQL 5.5.0 或更高版本
  4. ArrayList解析
  5. 洛谷——P1102 A-B数对
  6. P2819 图的m着色问题
  7. HashCode()的作用
  8. POJ 2763 Housewife Wind(树链剖分+树状数组)
  9. 【分块】hdu5057 Argestes and Sequence
  10. Mysql中的JSON系列操作函数