微信里有人发做任务网站,电商平台设计包括哪些内容,seo综合,郑州外贸网站建设公司价格需求澄清用户友好的介绍 如果您不熟悉String格式或只想快速解决问题#xff0c;那么String格式的Java文档不是最容易阅读和理解的。 尽管它很完整#xff0c;但是它不是非常用户友好的#xff0c;所以我想我会尝试编写一个更清晰的版本。 这篇文章不仅对您有帮助#xff0c… 需求澄清 用户友好的介绍 如果您不熟悉String格式或只想快速解决问题那么String格式的Java文档不是最容易阅读和理解的。 尽管它很完整但是它不是非常用户友好的所以我想我会尝试编写一个更清晰的版本。 这篇文章不仅对您有帮助而且对我本人来说也很重要。 格式方法 有两种提供String格式设置行为的方法 format和printf 。 format方法是String.class的静态方法而printf方法是静态System.out.class的方法。 它们的行为完全相同并且具有相同的签名。 format(format string, argument(s));
printf(format string, argument(s)); “格式字符串”用于格式化参数列表中的值。 它既可以包含不与任何参数关联的String文字信息也可以包含特定于参数的格式数据。 格式化数据将始终以百分号 开头后跟格式化语义。 让我们看一些例子。 替换字符串中的占位符 让我们从最简单的示例开始。 在占位符下方的代码段中 s被替换为名称Alex 。 String.format(Hello %s, Alex);
// Hello Alex format方法返回一个字符串其中包含消息Hello Alex 。 多占位符 一次可以替换多个占位符。 在下面的示例中格式化的String由一个String和一个浮点基元组成。 String.format(The %s costs $%f, Bag, 12.99f);
// The Bag costs $12.990000 请注意该数字如何不格式化为货币的十进制数字。 接下来让我们看看数字格式。 如何格式化数字 要将数字格式设置为给定的小数位数请指定占位符后的位数如以下代码段所示。 String.format(The %s costs $%.2f, Bag, 12.99f);
// The Bag costs $12.99添加数字分隔符 要添加数字分隔符请在占位符后添加逗号。 String.format(The %s costs $%,.2f, Car, 54999.99f);
// The Car costs $54,999.99 逗号是特定于语言环境的因此在使用该字符对数字进行分组的区域中将使用点。分隔符。 让我们快速看一下其他数字格式设置选项。 将负数括在括号中 使用字符表示负数应放在括号内。 String.format(Absolute zero is %(.2f degrees Celsius, -273.15f);
// Absolute zero is (273.15) degrees Celsius包含正号或负号 使用字符可包含正号或负号。 String.format(Temperature of the Sun %,d K, 5778);
// Temperature of the Sun 5,778 KString.format(Temperature of Jupiter %,d Celsius, -145);
// Temperature of Jupiter -145 Celsius用零填充数字 用0标志和指定宽度来填充零。 在下面的代码中宽度为10。 String.format(A padded number %010d, 42);
// A padded number 0000000042 请注意零的数量不是10而是数字的宽度是10数字后的剩余空间用零填充以使数字10位数长。 左对齐数字 该数字可以左对齐并具有给定的宽度。 String.format(A left-justified number %-10d, 42);
// A left-justified number 42 请注意左边的空格数不是10而是数字的宽度是10数字后的剩余空间用空格字符填充以使数字字符变长。 八进制和十六进制数 有两个用于显示八进制和十六进制数字的格式设置选项前导0或0x或不包含任何前导字符。 String.format(An octal number %o, 100);
// An octal number 144
String.format(An octal number %#o, 100);
// An octal number 0144String.format(An hex number %x, 100);
// An hex number 64
String.format(An hex number %#X, 100);
// An hex number 0X64 注意最后一个示例中的大写字母X。 X的大小写确定输出编号中X的大小写即小写的x导致输出编号中的小写X。 编号标志汇总 为了总结到目前为止所讨论的内容我准备了一张汇总这些标志的表格。 这不是一个详尽的列表因为您必须查阅Java文档 。 旗 描述 笔记 – 左对齐这个说法。 不能与打击垫“ 0”一起使用。 还必须指定宽度。 在此参数中包含一个符号或– 仅带数字。 d或f。 0 用零填充该参数。 仅带数字。 还必须指定宽度。 d或f。 使用特定于语言环境的分组分隔符即123,456中的逗号 仅带数字。 d或f。 将负数括在括号中 仅带数字。 d或f。 常规字符和数字类型的格式说明符具有以下语法 格式字符串 [arg_index $] [flags] [width] [。precision]转换字符 方括号[]中的值是可选的格式字符串唯一需要的元素是百分比字符和转换字符。 转换字符 为了汇总我所讨论的转换字符我构建了一个汇总表。 这不是一个详尽的列表因为您必须查阅Java文档 。 转换字符 类型 笔记 d 积分 十进制整数 Ø 积分 八进制整数 xX 积分 十六进制整数 eE 浮点 科学计数法中的小数 F 浮点 小数 约会时间 日期和时间转换字符的前缀 百分 文字百分比 如何格式化字符串 字符串的格式与数字的格式几乎相同并且将使用许多相同的标志。 让我们开始看一个用几个参数格式化的字符串。 多个参数 格式化的字符串可以包含多个不同类型的参数。 下面的示例有两个参数一个是字符串另一个是整数。 String.format(The %1s has %2d moons, Saturn, 53);
// The Saturn has 53 moons 注意参数的格式。 该数字表示字符串后面的参数顺序。 例如1s引用第一个参数2d引用第二个参数。 格式化字符串 字符串可以采用与数字相同的格式。 让我们看一些简单的例子 指定宽度 String.format(Fun with %10s, Java);
// Fun with Java指定宽度的左对齐 output String.format(Fun with %-10s, Java);
// Fun with Java 截断最大字符数 output String.format(Fun with %.1s, Java);
// Fun with J最后的话 这是一些结合了标志宽度精度和转换字符的复合示例。 System. out.printf( %2$(,8d, %1$(,8d, 1234, -5678);
// (5.678), 1.234 在负数附近显示花括号 显示表示正数 使用本地号码格式 8最小宽度8 d位 System. out.printf( %2$0,8d, %1$0,8d, 1234, -5678);
// -005.678, 001.234 0用0填充空间 System. out.printf( %2$-,8d, %1$-,8d, 1234 ,-5678);
// -5.678, 1.234 –左对齐 System. out.printf( %1$,8.4f, 12234.678878);
// 12.234,6789 显示表示正数 使用本地号码格式 8最小宽度8 .4点后的位数四舍五入 f浮动 结论 字符串格式是一个复杂的主题为确保您了解所有详细信息请参考Java文档 。 代码源 本文的代码源位于我的GitHub存储库中 。 进一步阅读 我通常会发布有关Java EE的帖子。 以下是您可能感兴趣的主题的简短列表 Java EE过去现在和未来 上下文和依赖注入 CDI 企业Java Bean EJB 什么是JAX-RS批注 Context注释用于什么 学到更多 如果您想提高Java EE技能请尝试我的Lynda.com视频培训课程。 它们涵盖了多种Java EE技术 带有JAX-RS 2.0的RESTful服务 使用Java EE进行WebSocket编程 使用Java EE和JSON处理 学习Java企业版 翻译自: https://www.javacodegeeks.com/2017/09/format-string-clarified.html需求澄清