600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > Java学习笔记(七)--格式化字符串及格式输出

Java学习笔记(七)--格式化字符串及格式输出

时间:2020-02-02 09:26:06

相关推荐

Java学习笔记(七)--格式化字符串及格式输出

一、格式化字符串

String 类的静态 format() 方法用于创建格式化的字符串。

1、format(String format, Object···args)

该方法使用指定的格式字符串和参数返回一个格式化字符串,格式化后的新字符串使用本地默认的语言环境(可用 Locale.getDefault() 方法查看本地语言环境)。

str1 = str.format(String format, Object···args);

format:格式字符串。args:格式字符串中由格式说明符引用的参数。如果还有格式说明符以外的参数,则忽略这些额外的参数。此参数的数目是可变的,可以为0。

2、format(Local l, String format, Object···args)

str1 = str.format(Local l, String format, Object···args)

l:格式化过程中要应用的语言环境。如果 l 为 null,则不进行本地化。format:格式化字符串。args:格式字符串中由格式说明符引用的参数。如果还有格式说明符以外的参数,则忽略这些额外的参数。此参数的数目是可变的,可以为0。

下面是一个例子演示图片:

1.1 日期和时间字符串格式化

format() 方法通过给定的特殊转换符作为参数来实现对日期和时间的格式化。

1.1.1 日期格式化

实例:在项目中创建类GetDate。

import java.util.Locale; //导入java.util.Locale类import java.util.Date; //导入java.util.Date类public class GetDate {public static void main(String[] args) {Locale l = Locale.getDefault(); //获取本地默认语言环境System.out.println("默认语言环境" + l);Date date = new Date(); //创建Date对象date//指定语言环境格式化date String year = String.format("%tY", date);String month = String.format(Locale.US, "%tB", date);String day = String.format("%td", date);String week = String.format(Locale.US, "%tA", date);System.out.println("\n英文:");System.out.println(month + "\n" + week);//本地语言环境格式化String month1 = String.format("%tB", date);String week1 = String.format("%tA", date);System.out.println("\n本地语言:");System.out.println(year + "年" + month1 + day + "日" + week1);}}

代码及运行结果图片:

1.1.2 时间格式化

format() 方法可实现Date对象时间的格式化。

1.1.3 格式化常见的日期时间组合

Date对象的格式化日期和时间转换符定义了各种日期和时间组合的格式。

1.2 常规类型格式化

常规类型的格式化可应用于任何参数类型。

String 类的静态方法 format() 用来创建可复用的格式化字符串,实现不同数据类型到字符串的转换。

二、格式化控制台输出

输出格式化数字可以使用 printf() 和 format() 方法。

使用 System.out.printf() 方法在控制台上显示格式化输出。

System.out.printf(format, item1, item2, ..., itemn);

这里的 format 是指一个由子串和格式说明符构成的字符串。格式说明符指定每个条目应该如何显示。这里的条目可以是数值、字符、布尔值或字符串。简单的格式说明符是以百分号 (%) 开头的转换码。

2.1 用于 printf 的转换符

2.2 用于 printf 的标志

2.3 时间和日期的转换符

在这里,使用以 t 开始,格式为 tx,x代表的内容如下表:

2.4 使用参数索引格式化输出日期

Date date = new Date();System.out.printf("%1$s %2$tB%2$te日, %2$tY","data:",date);//输出结果为 data: 四月19日,

索引必须紧跟在%后面,并以$终止。参数索引值从1开始,而不是从0开始。

同样还可以使用 < 标志。它指示前面格式说明中的参数将再次使用。

System.out.printf("%s %tB%<te日, %<tY","data:",date);

2.5 指定宽度和精度

例子

public class PrintfDemo {public static void main(String[] args) {System.out.printf("%5.6f",12345678.12345678);System.out.println();System.out.printf("%8.4f",1.12);System.out.println();System.out.printf("%-8.4f",1.12);}}/*输出:12345678.1234571.12001.1200 */

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。