`
FiReKing
  • 浏览: 2909 次
  • 性别: Icon_minigender_1
  • 来自: 厦门
最近访客 更多访客>>
社区版块
存档分类
最新评论

Java中print、printf、println的区别

阅读更多

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

System.out.printf(“the number is: %d”,t);
参照JAVA API的定义如下:
‘d’ 整数 结果被格式化为十进制整数
‘o’ 整数 结果被格式化为八进制整数
‘x’, ‘X’ 整数 结果被格式化为十六进制整数
‘e’, ‘E’ 浮点 结果被格式化为用计算机科学记数法表示的十进制数
‘f’ 浮点 结果被格式化为十进制数
‘g’, ‘G’ 浮点 根据精度和舍入运算后的值,使用计算机科学记数形式或十进制格式对结果进行格式化。
‘a’, ‘A’ 浮点 结果被格式化为带有效位数和指数的十六进制浮点数

println(“test”)相当于print(“test\n”)就是一般的输出字符串

print\println\printf的区别

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

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

printf是格式化输出的形式。

下在举个例子:

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位,这样输出的的表格结果就对不齐了。如果将输出结果全部为同一样的占位符数。那样就对齐了。呵呵。

除了”%d”可以这样外,别的也可以,读者不防试试。会有很多收获的。

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

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相补。

ENDS

分享到:
评论

相关推荐

    浅析Java中print、printf、println的区别

    Java中的`print`、`printf`和`println`都是用于标准输出的方法,它们在输出时有不同的行为和用途。 1. `print` `print`方法用于输出任意类型的数据,但不会在输出后自动添加换行符。它允许你连续输出多个元素,而...

    Java基本语句(注释语句、javadoc、System.out.print和println和printf区别)复习2

    注释语句、javadoc、System.out.print和println和printf区别java特殊语句注释语句print、printf、println区别 java特殊语句 转换符 类型 d 十进制 x 十六进制 o 八进制 f 定点浮点数 e 指数浮点数 ...

    print-java.rar_java print

    总的来说,`print`方法是Java中输出数据的基本手段,结合`println`、`printf`等方法,我们可以实现各种复杂的控制台输出需求。对于初学者,熟练掌握这些基础知识至关重要,它们是你构建更复杂程序的基础。通过不断...

    java is print.zip_IS_broaddk3

    "java is print.zip_IS_broaddk3"这个标题暗示了一个与Java打印功能相关的压缩包,其中可能包含了一个或多个Java源代码文件,用于演示或教学如何在Java中进行打印操作。"broaddk3"可能是项目、版本号或者是特定的...

    java打印 java定位打印

    在Java中,打印功能主要通过`System.out.println()`方法实现,而定位打印则涉及到更复杂的文本格式化技巧。下面将详细阐述这两个概念。 一、Java打印 1. `System.out.println()`: 这是Java中最基础的打印方法,...

    java-sample-project:这是Java示例项目,涵盖了大部分Java核心知识,并演示了诸如原始数据类型,注释,类,导入,Scanner,final,Strings,static,private,protected,public,构造函数,数学,hasNextLine,nextLine,getters等概念,setter,方法重载,Random,cast,toString,从Strings转换为基本体,从Primitives转换为Strings,如果是,则为print,println,prin

    setter,方法重载,Random,cast,toString,从Strings转换为基本体,从Primitives转换为Strings,如果是,则为print,println,printf,逻辑运算符,比较运算符,三元运算符, while,break,continue,do while,...

    java打印

    Java中最基础的打印方式是使用`System.out.println()`方法,它用于在标准输出设备(通常是控制台)打印一行文本。你可以打印字符串、数字、变量值等各种类型的数据。例如: ```java int num = 10; System.out....

    JAVA_java编程_countzeh_

    总结起来,"JAVA_java编程_countzeh_"着重讲解了Java中的控制台输出技术,包括基本的`println()`、格式化的`printf()`或`format()`,以及从控制台读取输入的方法。同时,通过分析提供的压缩包文件,我们可以看到一个...

    java做acm题目入门知识

    Java提供了多种输出方式,包括`System.out.print()`, `System.out.println()` 和 `System.out.printf()`。 - `System.out.print()`用于打印数据,不会换行。 - `System.out.println()`用于打印数据并换行。 - `...

    ACM之java速成

    Java提供了多种输出方式,包括`System.out.print()`、`System.out.println()`和`System.out.printf()`。`printf`方法可以进行格式化输出,类似于C语言中的`printf`函数。例如: ```java import java.io.*; ...

    acm中关于JAVA的细节

    根据提供的文件信息,本文将对ACM竞赛中Java编程中涉及的一些关键知识点进行详细解析,主要包括:输入输出处理、格式化输出、字符串操作以及大数处理等几个方面。 ### 一、输入输出处理 在ACM竞赛中,高效地读取...

    Java基础学习第二天

    此外,还学习了print、println、printf的区别,以及注释的使用方法,包括单行注释//和多行注释/*...*/。 在教学目标部分,学习了什么是标识符,标识符的命名规范,以及如何正确使用关键字和保留字。标识符用于命名...

    ACM java编程感悟

    输出方面,System.out.println()、System.out.printf()和System.out.print()都是常用的控制台输出方法,而FileWriter和PrintWriter则用于文件输出。理解并熟练掌握这些类和方法是提高代码效率的关键。 字符串处理在...

    java课程日历,输入日期打印日历

    在Java中,我们可以使用`java.util.Calendar`类或者`java.time`包中的类(自Java 8引入)来实现这个功能。 首先,让我们探讨`java.util.Calendar`类。这个类是Java中的一个抽象类,提供了日期和时间的表示。要创建...

    java编写一个乘法表

    在本篇文章中,我们将深入探讨如何使用Java语言编写一个简单但功能完善的乘法表程序。该程序能够生成1到9的乘法表,并且输出格式整齐美观。通过这个例子,我们可以学习到Java的基本语法、循环结构以及字符串操作等...

    java学习笔记JDK6课件之三

    对于C语言用户,Java提供了类似`printf`的功能,即`System.out.printf`,它支持格式化输出,如在`HelloJavaForC`类中所示: ```java public class HelloJavaForC { public static void main(String[] args) { ...

    33Java大整数高精度1

    在 Java 中,我们可以使用 `System.out.printf()` 来输出格式化字符串,例如: ```java import java.util.*; import java.text.*; public class Main { public static void main(String[] args) { DecimalFormat...

    java实验一 java基础实验

    1. **理解Java Application与Applet及DialogBox的区别**:通过实践掌握Application与Applet的基本概念及其应用场景,同时熟悉如何使用DialogBox进行用户交互。 2. **Eclipse环境下的程序开发流程**:学会如何在...

    java基础笔记

    Java中的`System.out.printf()`函数允许开发者以更加精细的方式控制输出的格式。常见的格式化标志有: - `%d`:整数 - `%f`:浮点数 - `%s`:字符串 - `%c`:字符 - `%b`:布尔值 还可以添加修饰符来控制输出的...

Global site tag (gtag.js) - Google Analytics