【Java 笔记】 java 格式化输出
public static void main(String[] args) { /**
* 格式化形式
* %[argument_index$][flags][width][.precision]conversion
*
* argument_index: 可选,是一个十进制整数,用于表明参数在参数列表中的位置。第一个参数由 "1$" 引用,第二个参数由 "2$" 引用,依此类推。
*
* flags: 可选,用来控制输出格式
*
* width: 可选,是一个正整数,表示输出的最小长度
*
* precision:可选,用来限定输出的精度
*
* conversion:必须,用来表示如何格式化参数的字符
*/ /**
* argument_index$
* %2$s 表示第二个参数输出字符串类型
*/ /**
* flags是可选参数,用于控制输出的格式,比如左对齐、金额用逗号隔开。
*
* '-' 在最小宽度内左对齐,不可以与“用0填充”同时使用
* '+' 结果总是包括一个符号
* ' ' 正值前加空格,负值前加负号
* '0' 结果将用零来填充
* ',' 每3位数字之间用“,”分隔(只适用于fgG的转换)
* '(' 若参数是负数,则结果中不添加负号而是用圆括号把数字括起来(只适用于eEfgG的转换)
*/ /**
* width是可选参数,用于控制输出的宽度。
* %5d %5s
*/ /**
* precision是可选参数,用来限定输出的精度,用于浮点数。
* %.5f
*/ /**
* 各种 conversion
*
* %s 字符串类型 "mingrisoft"
* %c 字符类型 'm'
* %b 布尔类型 true
* %d 整数类型 - 十进制 99
* %x 整数类型 - 十六进制 FF
* %o 整数类型 - 八进制 77
* %f 浮点类型 99.99
* %a 十六进制浮点类型 FF.35AE
* %e 指数类型 9.38e+5
* %g 通用浮点类型: f和e类型中较短的
* %h 散列码
* %% 百分比类型 %
* %n 换行符
* %tx 日期与时间类型(x代表不同的 <日期> 与 <时间> 转换符)
*
* 注: 日期时间的格式输出一般使用另外的库的相关类来构造, 不采用这种方式
* 日期转换符
*
* 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
* B/b/h 本地化显示月份字符串
* A/a 本地化显示星期字符串
* C 年份除以100的结果, 不足俩位补 0
* Y/y 四位年份和2位年份
* j 显示公历年的第几天
* m 显示当前月份, 不足俩位前面补 0
* d 当月的第几天, 不足俩位前面补 0
* e 当月的第几天
*
* 时间格式的转换符要更多、更精确
*
* H 2位数字24时制的小时(不足2位前面补0) 15
* I 2位数字12时制的小时(不足2位前面补0) 03
*
* k 2位数字24时制的小时(前面不补0) 15
* l 2位数字12时制的小时(前面不补0) 3
*
* M 2位数字的分钟(不足2位前面补0) 03
* S 2位数字的秒(不足2位前面补0) 09
*
* L 3位数字的毫秒(不足3位前面补0) 015
* N 9位数字的毫秒数(不足9位前面补0) 562000000
* p 小写字母的上午或下午标记 中:下午 英:pm
* z 相对于GMT的RFC822时区的偏移量 +0800
* Z 时区缩写字符串 CST
* s 1970-1-1 00:00:00 到现在所经过的秒数 1193468128
* Q 1970-1-1 00:00:00 到现在所经过的毫秒数 1193468128984
*/ // + 为正数或者负数添加符号
// − 左对齐
// 0 数字前补领0 - 右对齐宽度剩余
System.out.printf("{%+-5d} - {%05d}%n", 12, 12); // 宽度不够
System.out.printf("{%+-5d} - {%015d}%n", 1111112, 11111112);
String.format("'b':将参数格式化为boolean类型输出,'B'的效果相同,但结果中字母为大写。%b", false); // 格式化参数引用
System.out.printf("%2$s, %1$d %n", 99, "abc"); // 格式化日期
Date date = new Date();
System.out.printf("%1$tF %1$tT %n", date);
System.out.println(String.format(Locale.US, "英文星期的简称:%ta", date));
// System.out.printf("%tN%n", date);
System.out.printf("%1$td%n", date);
System.out.printf("%1$tm%n", date); System.out.println("---------------------------------------------------------------------"); System.out.println(String.format("'B':本地化显示月份字符串,如:January、February"));
System.out.println(String.format("'b':本地化显示月份字符串的缩写,如:Jan、Feb"));
System.out.println(String.format("'h':本地化显示月份字符串的缩写,效果同'b'")); Calendar calendar = Calendar.getInstance();
System.out.println(String.format(Locale.US, "Locale.US 月份=%1$tB,缩写=%1$tb", calendar));
System.out.println(String.format(Locale.CHINA, "Locale.CHINA 月份=%1$tB,缩写=%1$tb", calendar)); System.out.println(String.format("'A':本地化显示星期几字符串,如:Sunday、Monday"));
System.out.println(String.format("'a':本地化显示星期几字符串的缩写,如:Sun、Mon"));
System.out.println(String.format(Locale.US, "Locale.US 星期几=%1$tA,缩写=%1$ta", calendar));
System.out.println(String.format(Locale.CHINA, "Locale.CHINA 星期几=%1$tA,缩写=%1$ta", calendar)); System.out.println(String.format("'C':年份除以100的结果,显示两位数,不足两位前面补0:%tC(范围:00-99)", calendar));
System.out.println(String.format("'Y':显示四位数的年份,格利高里历,即公历。不足四位前面补0:%tY", calendar));
System.out.println(String.format("'y':显示年份的后两位:%ty(范围:00-99)", calendar));
System.out.println(String.format("'j':显示当前公历年的天数:第%tj天(范围:001-366)", calendar));
System.out.println(String.format("'m':显示当前月份:%tm月(范围:01-13?怎么会有13个月?)", calendar));
System.out.println(String.format("'d':显示是当前月的第几天,不足两位前面补0:%1$tm月第%1$td天(范围:01-31)", calendar));
System.out.println(String.format("'e':显示是当前月的第几天:%1$tm月第%1$te天(范围:1-31)", calendar));
}
【Java 笔记】 java 格式化输出的更多相关文章
- Java 笔记 —— java 和 javac
Java 笔记 -- java 和 javac h2{ color: #4ABCDE; } a{ text-decoration: none !important; } a:hover{ color: ...
- Java基础 -- 字符串(格式化输出、正则表达式)
一 字符串 1.不可变String String对象是不可变的,查看JDK文档你就会发现,String类中每一个看起来会修改String值的方法,实际上都是创建一个全新的String对象,以包含修改后 ...
- Java中中英文对齐输出问题,以及Java中的格式化输出
一 中英文对齐输出问题 问题,要求控制台输出如下: abcefg def 森林 阿狗 其实就是要求对齐输出,各种查找java的格式化输出,然后发现只要一个简单的“\t”就可以实现. 代码如下: Sy ...
- python学习笔记 | strftime()格式化输出时间
time模块 import time t = time.strftime("%Y-%m-%d %H:%M:%S") print(t) datetime模块 import datet ...
- Object C学习笔记2-NSLog 格式化输出数据
1 . 几种常用类型变量声明 int i =10; BOOL isShow=YES; BOOL isShow=1; float f = 3.1415926; char a =120; NSString ...
- java笔记——Java关键字static、final使用小结
static 1. static变量 按照是否静态的对类成员变量进行分类可分两种:一种是被static修饰的变量,叫静态变量或类变量:另一种是没有被static修饰的变量,叫实例变量.两者的 ...
- Java笔记--Java的List、Iterator用法
1. List的使用 准备知识: List继承自Collection接口.List是一种有序集合,List中的元素可以根据索引(顺序号:元素在集合中处于的位置信息)进行取得/删除/插入操作. 跟Set ...
- 菜鸡的Java笔记 java基础类库 BaseClassLibrary
java基础类库 BaseClassLibrary StringBuffer 类的特点 StringBuffer,StringBuilder,String 类之间的关系 ...
- 菜鸡的Java笔记 - java 双向一对多映射
双向一对多映射 two-way 开发要求: 根据数据表的结构进行简单java类的转换: 要求实现如下的输出信息: 可以根据课程取得全部参与 ...
- 菜鸡的Java笔记 - java 多对多映射
要求: 1.将数据还原为简单java类 2.数据的输出: 可以根据一个用户输出它对应的角色以及每个角色对应的权限,以及包含的具体的权限详情: 一个权限可以输出具 ...
随机推荐
- ShellExecute 启动外部程序 参数详细介绍
ShellExecute的功能是运行一个外部程序(或者是打开一个已注册的文件.打开一个目录.打印一个文件等等),并对外部程序有一定的控制. 目录 1基本简介 2原型参数 3返回值 4例子 5特殊用法 ...
- JQuery判断浏览器类型(IE, Firefox…)
1 2 3 4 5 6 7 8 9 10 11 $(function() { if ($.browser.msie) { alert("这是一个IE浏览器&q ...
- Java JDK 配置环境变量
使用了java也有了两年了,安装了很多次jdk都记不住安装步骤 = =,刚刚又配置了一次,码一下步骤: 1.右击"此电脑" ---> "属性" ----& ...
- 悟空模式-java-普通工厂模式
[大圣看玩多时,问土地道:“此树有多少株数?”土地道:“有三千六百株.前面一千二百株,花微果小,三千年一熟,人吃了成仙了道,体健身轻.中间一千二百株,层花甘实,六千年一熟,人吃了霞举飞升,长生不老.后 ...
- 为什么不要 "lock(this)" ? lock object 并是readonly(转载)
一. 为什么要lock,lock了什么? 当我们使用线程的时候,效率最高的方式当然是异步,即各个线程同时运行,其间不相互依赖和等待.但当不同的线程都需要访问某个资源的时候,就需要同步机制了,也就是 ...
- Dllmain的作用
DllMain函数是DLL模块的默认入口点.当Windows加载DLL模块时调用这一函数.系统首先调用全局对象的构造函数,然后调用全局函数 DLLMain.DLLMain函数不仅在将DLL链接加载到进 ...
- Ubuntu 16.04 小飞机启动失败
好长时间没用小飞机了,今天打开发现,无法启动了. 查看了日志: Initialising ciphers... AES-256/CFB (aes-256-cfb) initialised. Runni ...
- frame shiro 概述
权限管理 权限管理包括用户身份认证和授权两部分,简称认证授权. 身份认证包括用户口令登陆.指纹验证.刷卡等方式. 授权即访问控制,控制谁能访问哪些资源,主体身份认证后分配权限以访问自己可以访问的资源. ...
- JS JSON序列化 Ajax form表单
# JS序列化 a = {"k1":"v1"} #序列化为字符串 类似python json.dumps(a) b = JSON.stringify(a) &q ...
- ES6-Function
Function 箭头函数 ES6中对于函数的扩展最吸引人的莫过于箭头函数啦,不多说,先学会再说. 函数体内的this对象,是定义时所在的对象,而不是使用时所在的对象,这个特性与正常函数不同. // ...