通配符

与 C 语言中的 printf 参数列表非常类似,java 格式化方法的 format 参数也是通过通配符的基本字符串表示的:java 格式化文本通配符通配符说明示例

%sString"java1.5"

%cchar'm'

%bbooleantrue

%dint(十进制)99

%xint(十六进制)FF

%oint(八进制)77

%ffloat(十进制)99.99

%afloat(十六进制)FF.35AE

%e指数类型9e+5

%g通用浮点类型(选取浮点表示法与指数表示法中较短的一种)

%h散列码

%%%%

%n换行符\n

%tx日期与时间Date 对象

下面展示了基本的用法:

package com.techlog.test.service;

import java.util.Formatter;

/**

* just for test

* Created by techlog on 2016/5/21.

*/

public class ForTest {

public static void main(String[] argv) {

Formatter formmater = new Formatter(System.out);

formmater.format("Hi, %s%n", "Lisa");

}

}

这里,我们使用了 System.out 作为参数创建 Formatter 对象,因此执行 format 方法后会自动输出到标准输出

如果我们使用默认构造器创建 Formatter 对象,不传递任何参数,则 format 方法会返回格式化后的 String(虽然无论用什么参数创建 Formatter 对象,format 方法都会返回格式化后的 String,但是通常我们使用 System.out 创建 Formatter 对象并不关心 format 方法的返回)

限定符

同时 java 还未格式化参数提供了限定符标志:java 格式化限定符标志说明示例结果

+为正数或者负数添加符号("%+d",15)+15

−左对齐("%-5d",15)|15   |

0数字前面补0("%04d", 99)0099

空格在整数之前添加指定数量的空格("% 4d", 99)|  99|

,以“,”对数字分组("%,f", 9999.99)9,999.990000

(使用括号包含负数("%(f", -99.99)(99.990000)

#如果是浮点数则包含小数点,如果是16进制或8进制则添加0x或0("%#x", 99), ("%#o", 99)0x63, 0143

$被格式化的参数索引("%1$d,%2$s", 99,"abc")99,abc

日期时间的格式化java 格式化日期时间限定符限定符说明示例

c包括全部日期和时间信息星期六 十月 27 14:21:20 CST 2007

F“年-月-日”格式2007-10-27

D“月/日/年”格式10/27/07

r“HH:MM:SS PM”格式(12时制)02:25:51 下午

T“HH:MM:SS”格式(24时制)14:28:16

R“HH:MM”格式(24时制)14:28

H2位数字24时制的小时(不足2位前面补0)15

I2位数字12时制的小时(不足2位前面补0)03

k2位数字24时制的小时(前面不补0)15

l2位数字12时制的小时(前面不补0)3

M2位数字的分钟(不足2位前面补0)03

S2位数字的秒(不足2位前面补0)09

L3位数字的毫秒(不足3位前面补0)015

N9位数字的毫秒数(不足9位前面补0)562000000

p小写字母的上午或下午标记中:下午,英:pm

z相对于GMT的RFC822时区的偏移量+0800

Z时区缩写字符串CST

package com.techlog.test.service;

import java.util.Date;

import java.util.Formatter;

/**

* just for test

* Created by techlog on 2016/5/21.

*/

public class ForTest {

public static void main(String[] argv) {

Date date=new Date();

Formatter formatter = new Formatter(System.out);

formatter.format("全部日期和时间信息:%tc%n", date);

formatter.format("月/日/年格式:%tD%n", date);

formatter.format("HH:MM:SS PM格式(12时制):%tr%n", date);

formatter.format("HH:MM:SS格式(24时制):%tT%n", date);

formatter.format("年-月-日格式:%tF%n", date);

formatter.format("2位数字24时制的小时(不足2位前面补0):%tH%n", date);

}

}

打印出了:

全部日期和时间信息:星期六 五月 21 22:10:55 CST 2016

月/日/年格式:05/21/16

HH:MM:SS PM格式(12时制):10:10:55 下午

HH:MM:SS格式(24时制):22:10:55

年-月-日格式:2016-05-21

2位数字24时制的小时(不足2位前面补0):11

java list格式化_java 格式化输出相关推荐

  1. java calendar格式化_java格式化日期的三种方式

    8月 29, 2014 | Nix.Huang 1)借助DateFormat类: public String toString(Date d) { SimpleDateFormat sdf = new ...

  2. java 货币格式化_java – 格式化货币符号

    以下工作.这有点丑,但它履行合同: NumberFormat nf = NumberFormat.getCurrencyInstance(); DecimalFormatSymbols decimal ...

  3. java金字塔显示_java控制台输出数字金字塔示例分享

    /*Java *Author: NealFeng at oschina.net *License: GPLv2+ *Time: 2014/1/17 * *在控制台输出数字金字塔: *          ...

  4. java的科学记数法_java – 为什么输出是科学记数法?

    为什么以下代码的输出是科学记数法? BigDecimal val = new BigDecimal("0000.000000111"); System.out.println(va ...

  5. java println 数组_java 数组输出

    那就把两个for循环的顺序改动一下,把条件也改一下就好.System.out.println("--------------------------武侠小说列表--------------- ...

  6. java螺旋矩阵_Java 实现输出螺旋矩阵

    题目 好记性不如烂笔头,记下来 用java实现输入一个50以内的数字num,让这个num的平方数字以螺旋矩阵的方式显示在屏幕上. TIM截图20180829160501.png 图解示例:(如下图↓) ...

  7. java判断输入的格式化_Java的字符串及格式化输入输出

    Java的字符串及格式化输入输出 1.String的不可变 在浅析Java的jvm上的内存位置的分配里已经说明,String使用了常量池技术,所以在栈中的应用要么是指向常量池,要么是指向堆,Strin ...

  8. java获取mysql时间格式化_Java与mysql的时间格式化问题,获取时间的上下午

    Java与mysql的时间格式化问题,获取时间的上下午java 在项目中常常会遇到对时间进行格式化的问题,一次在对应用中发现,使用Java的SimpleDateFormat格式化时间,获取到的是上午, ...

  9. Java 1.2.2 格式化输出

    System.out.printf( ) 在早期的 Java 版本中,格式化数值曾引起过一些争议.后来Java SE 5.0 沿用了 C 语言库函数中的 printf方法. 每一个以 %字符开始的格式 ...

最新文章

  1. 【数据结构与算法】之深入解析“二叉搜索树中的插入操作”的求解思路与算法示例
  2. 机器学习问题总结(02)
  3. fixed与sticky的区别
  4. 【数据库系统设计】关系数据库标准语言SQL(3)
  5. DNS原因导致的不能访问网站问题一例
  6. Lua参数绑定函数实现方法
  7. 风险评估-HEAVENS
  8. Windows电脑开机后进不了系统的解决方法
  9. Ezchip Tilera Tile-Mx100: Der 100-ARM-Netzwerkprozessor
  10. 如何下载网站的在线视频
  11. 101. 熟悉 Java 并发吗,谈谈对 JUC 线程池 ThreadPoolExecutor 的认识吧
  12. 字符间距加宽5磅怎么设置_word的字符间距加宽1period;2磅
  13. linux安装ftp服务并测试访问
  14. python小项目——2048小游戏(详解)
  15. adb删除软件_苹果免越狱如何安装ipa 苹果免越狱安装软件安装教程【详解】
  16. 浙江大学pta答案python第四章_浙大PTA-Python题库 编程题第一章(1-1~1-3)题解
  17. android 定位轨迹功能,小步外勤怎么看轨迹 定位轨迹功能详解
  18. BZOJ1616: [Usaco2008 Mar]Cow Travelling游荡的奶牛
  19. Cisco路由器配置教程
  20. NBU-备份错误代码查询

热门文章

  1. prompt和instruct的区别究竟是什么
  2. 各排序算法最好最坏平均情况下的时间复杂度
  3. Dubbo 通信协议 dubbo 协议为什么不能传大包
  4. 中国联通物联网部件服务介绍
  5. java手机注册获取验证码--乐信平台
  6. vue中如何改变css的背景色,在Vue-cli中如何实现为单独页面设置背景色
  7. 手机登录群晖出现ssl证书不可信_群晖WEB添加SSL证书实现HTTPS访问
  8. “互联网+”大学生创新创业大赛产业命题赛道命题方向分析
  9. 基于单片机的A/D数字电压表设计(电路+程序)
  10. 扬帆牧哲-虾皮营业执照问题解决