import java.util.Date;
/**
* 使用printf输出
*/
/**关键技术点
* 使用java.io.PrintStream的printf方法实现C风格的输出
* printf 方法的第一个参数为输出的格式,第二个参数是可变长的,表示待输出的数据对象
*/
public class Printf {
public static void main(String[] args) {
/*** 输出字符串 ***/
// %s表示输出字符串,也就是将后面的字符串替换模式中的%s
System.out.printf("%s", new Integer(1212));
// %n表示换行
System.out.printf("%s%n", "end line");
// 还可以支持多个参数
System.out.printf("%s = %s%n", "Name", "Zhangsan");
// %S将字符串以大写形式输出
System.out.printf("%S = %s%n", "Name", "Zhangsan");
// 支持多个参数时,可以在%s之间插入变量编号,1$表示第一个字符串,3$表示第3个字符串
System.out.printf("%1$s = %3$s %2$s%n", "Name", "san", "Zhang");
/*** 输出boolean类型 ***/
System.out.printf("true = %b; false = ", true);
System.out.printf("%b%n", false);
/*** 输出整数类型***/
Integer iObj = 342;
// %d表示将整数格式化为10进制整数
System.out.printf("%d; %d; %d%n", -500, 2343L, iObj);
// %o表示将整数格式化为8进制整数
System.out.printf("%o; %o; %o%n", -500, 2343L, iObj);
// %x表示将整数格式化为16进制整数
System.out.printf("%x; %x; %x%n", -500, 2343L, iObj);
// %X表示将整数格式化为16进制整数,并且字母变成大写形式
System.out.printf("%X; %X; %X%n", -500, 2343L, iObj);
/*** 输出浮点类型***/
Double dObj = 45.6d;
// %e表示以科学技术法输出浮点数
System.out.printf("%e; %e; %e%n", -756.403f, 7464.232641d, dObj);
// %E表示以科学技术法输出浮点数,并且为大写形式
System.out.printf("%E; %E; %E%n", -756.403f, 7464.232641d, dObj);
// %f表示以十进制格式化输出浮点数
System.out.printf("%f; %f; %f%n", -756.403f, 7464.232641d, dObj);
// 还可以限制小数点后的位数
System.out.printf("%.1f; %.3f; %f%n", -756.403f, 7464.232641d, dObj);
/*** 输出日期类型***/
// %t表示格式化日期时间类型,%T是时间日期的大写形式,在%t之后用特定的字母表示不同的输出格式
Date date = new Date();
long dataL = date.getTime();
// 格式化年月日
// %t之后用y表示输出日期的年份(2位数的年,如99)
// %t之后用m表示输出日期的月份,%t之后用d表示输出日期的日号
System.out.printf("%1$ty-%1$tm-%1$td; %2$ty-%2$tm-%2$td%n", date, dataL);
// %t之后用Y表示输出日期的年份(4位数的年),
// %t之后用B表示输出日期的月份的完整名, %t之后用b表示输出日期的月份的简称
System.out.printf("%1$tY-%1$tB-%1$td; %2$tY-%2$tb-%2$td%n", date, dataL);
// 以下是常见的日期组合
// %t之后用D表示以 "%tm/%td/%ty"格式化日期
System.out.printf("%1$tD%n", date);
//%t之后用F表示以"%tY-%tm-%td"格式化日期
System.out.printf("%1$tF%n", date);
/*** 输出时间类型***/
// 输出时分秒
// %t之后用H表示输出时间的时(24进制),%t之后用I表示输出时间的时(12进制),
// %t之后用M表示输出时间的分,%t之后用S表示输出时间的秒
System.out.printf("%1$tH:%1$tM:%1$tS; %2$tI:%2$tM:%2$tS%n", date, dataL);
// %t之后用L表示输出时间的秒中的毫秒
System.out.printf("%1$tH:%1$tM:%1$tS %1$tL%n", date);
// %t之后p表示输出时间的上午或下午信息
System.out.printf("%1$tH:%1$tM:%1$tS %1$tL %1$tp%n", date);
// 以下是常见的时间组合
// %t之后用R表示以"%tH:%tM"格式化时间
System.out.printf("%1$tR%n", date);
// %t之后用T表示以"%tH:%tM:%tS"格式化时间
System.out.printf("%1$tT%n", date);
// %t之后用r表示以"%tI:%tM:%tS %Tp"格式化时间
System.out.printf("%1$tr%n", date);
/*** 输出星期***/
// %t之后用A表示得到星期几的全称
System.out.printf("%1$tF %1$tA%n", date);
// %t之后用a表示得到星期几的简称
System.out.printf("%1$tF %1$ta%n", date);
// 输出时间日期的完整信息
System.out.printf("%1$tc%n", date);
}
}
/**
*printf方法中,格式为"%s"表示以字符串的形式输出第二个可变长参数的第一个参数值;
*格式为"%n"表示换行;格式为"%S"表示将字符串以大写形式输出;在"%s"之间用"n$"表示
*输出可变长参数的第n个参数值.格式为"%b"表示以布尔值的形式输出第二个可变长参数
*的第一个参数值.
*/
/**
* 格式为"%d"表示以十进制整数形式输出;"%o"表示以八进制形式输出;"%x"表示以十六进制
* 输出;"%X"表示以十六进制输出,并且将字母(A、B、C、D、E、F)换成大写.格式为"%e"表
* 以科学计数法输出浮点数;格式为"%E"表示以科学计数法输出浮点数,而且将e大写;格式为
* "%f"表示以十进制浮点数输出,在"%f"之间加上".n"表示输出时保留小数点后面n位.
*/
/**
* 格式为"%t"表示输出时间日期类型."%t"之后用y表示输出日期的二位数的年份(如99)、用m
* 表示输出日期的月份,用d表示输出日期的日号;"%t"之后用Y表示输出日期的四位数的年份
* (如1999)、用B表示输出日期的月份的完整名,用b表示输出日期的月份的简称."%t"之后用D
* 表示以"%tm/%td/%ty"的格式输出日期、用F表示以"%tY-%tm-%td"的格式输出日期.
*/
/**
* "%t"之后用H表示输出时间的时(24进制),用I表示输出时间的时(12进制),用M表示输出时间
* 分,用S表示输出时间的秒,用L表示输出时间的秒中的毫秒数、用P表示输出时间的是上午还是
* 下午."%t"之后用R表示以"%tH:%tM"的格式输出时间、用T表示以"%tH:%tM:%tS"的格式输出
* 时间、用r表示以"%tI:%tM:%tS %Tp"的格式输出时间.
*/
/**
* "%t"之后用A表示输出日期的全称,用a表示输出日期的星期简称.
*/
分享到:
相关推荐
在`Java 格式化输出 printf 例子.rtf`这个文件中,很可能是包含了使用`printf`方法进行格式化输出的各种实例和解释。通过阅读这个文件,你可以更深入地了解如何利用`printf`来处理各种类型的变量,并且掌握如何定制...
3. **格式化输出**:虽然不如 `printf` 函数强大,但PrintStream 提供了基本的格式化输出能力,如使用 `println()` 方法输出带换行的文本。 **三、使用PrintStream的基本步骤** 1. **创建PrintStream对象**:根据...
`MessageFormat`类提供了类似于printf风格的字符串格式化功能,可以用来格式化日期和时间。下面是一个使用`MessageFormat`将当前时间格式化为“yyyy-MM-dd-HH-mm:ss:ms”格式的例子: ```java String dateTime = ...
如果需要格式化输出,可以使用 `printf` 或 `format` 方法,它们允许动态插入变量,并控制输出格式,如精度、对齐方式等。 5. 流处理 Java 中的流处理模型是基于管道的概念,可以组合多个流来完成复杂的操作。...
在编程领域,格式化函数是不可或缺的一部分,它们用于将数据转换为人类可读或特定输出设备可处理的形式。本文将深入探讨格式化函数的核心概念、常见的格式化方式以及如何实现自定义的格式化函数源码。 一、格式化...
此类自JDK 1.5版本起被引入,它的设计理念是将格式化操作变得类似C语言中的printf函数的使用方式,使得开发者可以使用简单的语法就能够输出格式化的字符串。 在Formatter类中,格式化输出的模式字符串包含若干个...
在Java编程中,字符串格式化是一项非常重要的技能,它允许我们根据特定的模板来构造复杂的字符串,这在日志记录、输出报告或者处理用户界面显示时尤其有用。本教程将深入探讨Java中的字符串格式化技术,包括使用`...
#### 五、Java格式化输出进阶 **知识点:** - 使用 `printf` 方法进行格式化输出 - 字符串拼接与格式化 **详细解释:** 第五个示例进一步演示了如何使用 `printf` 方法对输出进行更精细的格式化: ```java import ...
了解`PrintStream`类和它的重载方法可以帮助开发者更有效地控制输出格式,例如使用`printf()`方法进行格式化输出。 总的来说,理解这些易错点有助于提升Java编程的精确性和效率,避免不必要的错误和陷阱。对于Java...
在编程领域,格式化字符串是一项基础且重要的技能,它允许我们根据特定的模板来构建动态的文本输出。在本实例015中,我们将深入探讨如何在不同的编程语言中使用格式化字符串,以及它们的不同方法和技巧。我们将重点...
Java的`System.out.printf()`函数提供了一种强大的格式化输出方式,通过特定的格式字符串控制输出的样式。常见的格式化字符包括: - `%d`:十进制整数输出。 - `%f`:十进制浮点数输出。 - `%e`, `%E`:科学记数法...
总的来说,这个例子通过实际操作展示了如何在Java中进行序列化和反序列化,包括对象、可能的图像数据,这对于理解和应用这些概念至关重要。通过实践,开发者能够更好地掌握如何在自己的项目中保存和恢复对象状态,...
`Formatter`类通常用于`System.out.format()`和`String.format()`方法,提供了一种类似于C语言的`printf`风格的格式化输出。 总之,Java中的`format`涉及到多个类和方法,它们在处理日期、时间、数字和字符串的格式...
6. 格式化输出:在打印月历时,`printf`方法用于格式化输出,确保日期和星期的对齐。`DateFormat`和`SimpleDateFormat`类用于日期的格式化,但在这个例子中并未直接使用。 7. 异常处理:在`main`方法中,`Parse...
5. 字符串格式化输出:`System.out.printf`方法可以实现格式化的输出,例如`System.out.printf("*");`可以输出星号,而`System.out.printf("%d*%d=%d", i, j, i*j);`可以格式化并输出乘法运算的结果。 6. 图形用户...
1. **`printf()` 方法**:`printf()` 是Java中的一个格式化输出方法,它属于`PrintStream`类,常用于控制输出内容的格式。在示例代码中,`System.out.printf()`用于打印带格式的字符串。`%f`用于输出十进制浮点数,...
`System.out.printf()`方法允许更复杂的格式化输出,可以控制输出的精度、对齐方式等。 2.5 另一个Java应用:整数相加 在这一部分,我们将学习如何创建一个程序,接收两个整数作为输入,然后将它们相加并显示结果。...
8. **格式化输出**:为了让输出更易读,可以考虑使用`printf`方法,如`System.out.printf("面积是:%f\n", area)`,这会让数字保留特定小数位数。 9. **注释**:良好的代码实践包括添加注释,解释代码的功能和目的...