print:将它的参数显示在命令窗口,并将输出光标定位在所显示的最后一个字符之后。

println: 将它的参数显示在命令窗口,并在结尾加上换行符,将输出光标定位在下一行的开始。

printf:是格式化输出的形式。printf主要是继承了C语言的printf的一些特性,可以进行格式化输出 print就是一般的标准输出;但是不换行 println和print基本没什么差别,就是最后会换行 System.out.printf("the number is: d",t);

格式化: 'd' 整数 结果被格式化为十进制整数;

'o' 整数 结果被格式化为八进制整数;

'x', 'X' 整数 结果被格式化为十六进制整数;

'e', 'E' 浮点 结果被格式化为用计算机科学记数法表示的十进制数;

'f' 浮点 结果被格式化为十进制数 ;

'g', 'G' 浮点 根据精度和舍入运算后的值,使用计算机科学记数形式或十进制格式对结果进行格式化;

'a', 'A' 浮点 结果被格式化为带有效位数和指数的十六进制浮点数 println("test")相当于print("testn")就是一般的输出字符串;

example:

package other;

public class TestPrint {

public static void main(String[] args) {

int i = 4;

double j = 5;

System.out.print("用print输出i:"+ i);

System.out.println( "用println输出i:"+ i);

System.out.printf("i的值为%d,j的值为%f", i,j);

}}

运行结果为:

用print输出i:4用println输出i:4

i的值为4,j的值为5.000000

结果分析:

可以看到,用print输出i后,没有换行,用println输出的结果直接在print输出语句后面,而输出println后换行了,所以用printf输出时,在第二行

输出。

我们再来看printf

“i的值为%d,j的值为%f”这个字符串中的"%d"变为i的值了,而"%f"变为了j的值了!

这里,"%d"的意思是一个int值的占位符,"%f"为一个double 或float值的点位符,这个变量的参数在后面提供。注意的是实参名必须按顺序排

。不然就会错了。而且类型也要相符。如果我们把语句改为

System.out.printf("i的值为%d,j的值为%f", j,i);//i和j位置反了

这时就有错了因为"%d"对应的参数变为j,"%f"对应的变为i了,而j是double的,与"%d"是int形的不一致。所以有错了。

还有"%s"是一个字符串值的点位符的意思。"%c"是一个字符值的点位符的意思。

可能读者还会问为什么j输出变成了5.000000?那是因为double是默认有6位小数的(这个可能和系统电脑有关,有的不是6位吧)但是如果你想

只要输出两位小数行不行?可以啊!只要改下语句就行了!

System.out.printf("i的值为%d,j的值为%.2f", i,j);

这里的"%.2f"的意思是输出两位小数点。如果想输出三位那就"%.3f"。

说到这里你会发现原来printf也很有用的。这样可以控制输出的格式。

将代码改为以下:

public class TestPrint {

public static void main(String[] args) {

int i = 4;

double j = 5.000f;

System.out.printf("i的值为],\n", i);

System.out.printf("i的值为=,j的值为%.2f", i,j);

}

}

运行结果为:

i的值为 4,

i的值为 4,j的值为5.00

原来在"%"与"d"之间加个数5的意思是输出5个占位符。默认向右对齐。这样的输出是很有用的,比如你想输出一个表格,因各个数大小不一,有的5位有的4位,这样输出的的表格结果就对不齐了。如果将输出结果全部为同一样的占位符数。那样就对齐了。呵呵。

我们再试着将代码改一下:

public class TestPrint {

public static void main(String[] args) {

int i = 4;

double j = 5.000f;

System.out.printf("i的值为d,\n", i);

}

}

运行结果为:

i的值为00004,

哈哈,原来"d"的意思是输出5个占位符,如果数字不足5的话就有左边以0相补

JAVA 之print,printf,println的更多相关文章

  1. java的print,printf,println以及输入

    java中有三种方式向控制台输入信息,分别是print,printf,println,现在简单介绍一下他们之间的异同. printf主要是继承了C语言的printf的一些特性,可以进行格式化输出 pr ...

  2. Java中print、printf、println

    Java中的System.out输出会用到print.println以及printf命令. 其中 print一般的标准输出,但是不换行. println对比print即在结尾处多了换行.  eg:pr ...

  3. Java中print、printf、println的区别

    Java中print.printf.println的区别 区别 print:标准输出,但不换行,不可以空参: println:标准输出,但会自动换行,可以空参,可以看做:println()相当于pri ...

  4. print、println与printf之间的区别

    //print没有换行的而println有自动换行功能.实例:uprint.java class uprint{public static void main(String arg[]){int i, ...

  5. Go语言中 Print,Println 和 Printf 的区别(八)

    Print 和 Println 这两个打印方式类似,只在格式上有区别 1. Println 打印的每一项之间都会有空行,Print 没有,例如: fmt.Println("go", ...

  6. 7.20.01 java格式化输出 printf 例子

    java格式化输出 printf 例子 importjava.util.Date; publicclassPrintf { publicstaticvoidmain(String[] args) { ...

  7. 【转】java格式化输出 printf 例子

    [转]java格式化输出 printf 例子 转自http://www.cnblogs.com/TankMa/archive/2011/08/20/2146913.html#undefined imp ...

  8. Java的System.out.println()的解析

    Java的System.out.println()的解析 System 是java.lang中的一个类. System.out 中的out, 代表了System类中的静态对象PrintStream, ...

  9. Java中print、printf、println的区别(转载)

    printf主要是继承了C语言的printf的一些特性,可以进行格式化输出 print就是一般的标准输出,但是不换行 println和print基本没什么差别,就是最后会换行 System.out.p ...

随机推荐

  1. Windows MFC 两个OpenGL窗口显示与线程RC问题

    问题为:背景界面是一个OpenGL窗口(对话框),在其上弹出一个OpenGL窗口(模态对话框)时, 1.上方的OpenGL窗口能响应鼠标操作等并刷新: 2.当移动或放大缩小上方的OpenGL窗口时,其 ...

  2. node.js搭建简单的websocket

    1.首先在官网http://www.nodejs.org/下载NODE.JS 2.打开命令行CMD,进入NODEJS\node_modules\的目录,输入npm install socket.io  ...

  3. .net工作准备系列--01前言

    注:学习参考朱毅编著的进入IT名企必读200题. 内容重在自我学习与巩固. 前言: 章节划分 01应聘须知 02基础知识(重点) 03进阶知识 04重点应用(aspnet第一部分) 04重点应用(as ...

  4. TCP\IP三次握手连接,四次握手断开分析

    TCP(Transmission Control Protocol) 传输控制协议 TCP是主机对主机层的传输控制协议,提供可靠的连接服务,采用三次握手确认建立一个连接: 位码即tcp标志位,有6种标 ...

  5. 进击的docker 二 : docker 快速入门

    1.安装docker 1.1.安装环境 [root@docker ~]# cat /etc/redhat-release CentOS Linux release (Core) [root@docke ...

  6. dedecms后台验证码显示不正常的四种处理办法

    验证码不正确解决方法 分为两类解决方法 第一类:取消掉验证码,直接登录 第二类:修复验证码,回复验证码功能 四种常见的处理办法如下: 第一种:取消掉验证码具体方法如下 实现的方法一共分为两步来进行: ...

  7. PIC32MZ tutorial -- OC Interrupt

    In my previous blog "PIC32MZ tutorial -- Output Compare", I shows how to apply Output Comp ...

  8. UDP发送和接收

    发送函数 public bool udpSend(string ip, int port, byte[] data) { Socket socket = new Socket(AddressFamil ...

  9. 4T_进程与进程间通信

    ∮进程 进程与程序 进程与程序是有区别的.刚吃完炸鸡腿,拿出一张餐巾纸,擦完嘴之后,在油乎乎的纸上写下以下文字 #include <stdio.h> void main() { print ...

  10. redis高可用分布式集群

    一,高可用 高可用(High Availability),是当一台服务器停止服务后,对于业务及用户毫无影响. 停止服务的原因可能由于网卡.路由器.机房.CPU负载过高.内存溢出.自然灾害等不可预期的原 ...