Java字符串的格式化与输出
Java字符串的格式化与输出
在C语言中格式化输出能够通过printf()函数实现,在Java中无需借助第三方工具相同能够实现此功能。自Java SE5后,java也提供了C语言中printf()风格的格式化输出方法。
眼下,有三种方法实现格式化输出,參考例如以下:
一、格式化输出的三种方法
1.System.out.format()
Java SE5引入的format方法能够用于PrintStream或PrintWriter对象。当中也包含System.out对象。format()方法模仿自C的printf()。
假设你比較怀旧的话。也能够使用printf(),以下是一个简单的演示样例:
/**System.out.format()和System.out.printf()方法使用演示样例
* System.out.format()和System.out.printf()两个方法是等价的
* */
public void method_1() {
int x = 5;
double y = 5.332542;
// 大家都会用的比較原始的方法:
System.out.println("Row 1: [" + x + " " + y + "]");
// 通过System.out.format()方式格式化输出
System.out.format("Row 1: [%d %f]\n", x, y);
// 或者通过System.out.printf()方式格式化输出
System.out.printf("Row 1: [%d %f]\n", x, y);
}/*输出:
Row 1: [5 5.332542]
Row 1: [5 5.332542]
Row 1: [5 5.332542]
*/// :~
能够看到,format()和printf()是等价的,它们仅仅须要一个简单的格式化字符串,加上一串參数就可以,每一个參数相应一个格式化修饰符。
2.使用Formatter类:
在Java中,全部新的格式化功能都由java.util.Formatter类处理。能够将Formatter看做一个翻译器。它将你的格式化字符串与数据翻译成须要的结果。当你创建一个Formatter对象的时候。须要向其构造器传递一些信息,告诉它终于的结果将向哪里输出:
/**通过Formater类实现格式化输出*/
public void method_2(){
//设置输出目的地为屏幕(System.out返回的是一个打印流对象"PrintStream")
Formatter f= new Formatter(System.out);
String name = "jack zhu";
int age = 100;
double stature = 178.536;//cm
f.format("name:%s 、age:%d、stature: %.2f)\n", name, age, stature);//.2表示浮点数精度(2位)
}/*输出:
name:jack zhu 、age:100、stature: 178.54)
*/// :~
结果result将被输出到System.out(屏幕),Formatter的构造器经过重载能够接受多种输出目的地,只是最经常使用的还是PrintStream(System.out属于PrintStream)、OutputStream和File。
3.String.format()
String.format()是一个static方法,他接受与Formatter.format()方法一样的參数。但返回一个String对象。当你仅仅需使用format()方法一次的时候。String.format()用起来非常方便。比如:
/**String.format()方法实现格式化输出:*/
public void method_3(){
int x = 5;
double y = 5.332542;
String result = String.format("Row 1: [%d %f]\n", x, y);
System.out.println(result);
}/*输出:
Row 1: [5 5.332542]
*/// :~
二、经常使用格式化修饰符參考:
像上面的几种格式化方法參数中控制格式的由%d 、%s等修饰符控制,修饰符能够看做是特殊的占位符,使用占位符来表示插入数据的位置和插入数据的类型。详细參考例如以下:
| 占位符 | 表示的数据类型 |
|
d
|
整数(十进制)
|
|
c
|
Unicode字符
|
|
b
|
Boolean值
|
|
s
|
String
|
|
f
|
浮点数(十进制)
|
|
e
|
浮点数(科学计数)
|
|
x
|
整数(十六进制)
|
|
h
|
散列码(十六进制)
|
|
%
|
占位说明符 |
http://www.ctosclub.com/forum.php?
mod=viewthread&tid=22
http://www.ctosclub.com
Java字符串的格式化与输出的更多相关文章
- 【C语言学习】《C Primer Plus》第4章 字符串和格式化输入/输出
学习总结 1.String str=”hello world!”;(Java),char[20]=” hello world!”;(C).其实Java字符串的实现,也是字符数组. 2.字符串的尾部都会 ...
- 重学C语言---04字符串和格式化输入/输出
1.程序示例 //talkback.c一个能为你提供一些信息的对话框 #include <stdio.h> #include <string.h> //提供strlen函数原型 ...
- java 日期的格式化 输入/输出
想要得到形如2018.07.09的格式化好的当天日期 创建Date对象,调用SimpleDateFormat对象的format方法: indexstr="logstash-"+ne ...
- C Primer Plus学习笔记(三)- 字符串和格式化输入/输出
从一个简单的例子开始 #include <stdio.h> int main() { char name[10]; printf("Input Your Name:\n" ...
- C Primer Plus 第4章 字符串和格式化输入/输出 编程练习
1. #include <stdio.h> int main(void) { ]; ]; printf("请输入您的名字: "); scanf("%s&quo ...
- JSON字符串控制台格式化输出 java
1.正常情况下返回的json数据格式如下: {"header":{"transSn":"e33128bb7622462ebfb2cbfcc46baa1 ...
- Java 字符串格式化详解
Java 字符串格式化详解 版权声明:本文为博主原创文章,未经博主允许不得转载. 微博:厉圣杰 文中如有纰漏,欢迎大家留言指出. 在 Java 的 String 类中,可以使用 format() 方法 ...
- JAVA字符串格式化String.format()的使用
JAVA字符串格式化-String.format()的使用常规类型的格式化 String类的format()方法用于创建格式化的字符串以及连接多个字符串对象.熟悉C语言的同学应该记得C语言的sprin ...
- java.text.MessageFormat格式化字符串时的小技巧
java.text.MessageFormat格式化字符串时的小技巧 public static void main(String[] args) throws InterruptedExceptio ...
随机推荐
- 提高PHP编码的一些技巧
1.不要使用相对路径 例如 require_once('../../lib/some_class.php'); 该方法有很多缺点: 1)它首先查找指定的php包含路径, 然后查找当前目录 2)如果该脚 ...
- MySQL-SQL语句中SELECT语句的执行顺序
SELECT语句的执行顺序大家比较少关注,下面将为您详细介绍SQL语句中SELECT语句的执行顺序,供您参考,希望对您能够有所帮助. SELECT语句的执行的逻辑查询处理步骤: (8)SELECT ( ...
- 使用Promise
Promise所要解决的问题:回调地狱 asyncTask1(data, function (data1){ asyncTask2(data1, function (data2){ asyncTask ...
- ubuntu(14.4) 安装phpmyadmin
1.下载phpmyadmin文件,然后上传到www目录下,直接通过ip地址进行访问,然后输入mysql账号就可以登录了
- 利用HttpWebRequest模拟表单提交 JQuery 的一个轻量级 Guid 字符串拓展插件. 轻量级Config文件AppSettings节点编辑帮助类
利用HttpWebRequest模拟表单提交 1 using System; 2 using System.Collections.Specialized; 3 using System.IO; ...
- python练习笔记——分解质因数
分解质因数:输入一个正整数,分解质因数:如输入: 90 则打印: 90 = 2 * 3 * 3 * 5 get_str = input("请输入一个100以内的正整数,以分解质因数:&q ...
- Spring.net(一)----Spring.NET框架简介及模块说明
简介: Spring.NET框架包括很多功能,Spring.NET 1.0包括完整的IoC容器和AOP类库.1.1版加入Web.ORM和数据模块.Spring.NET的下载包中并不包含与其它类库 ...
- 什么是BGP线路?什么是BGP机房?
BGP(Border Gateway Protocol,边界网关协议)主要用于互联网AS(自治系统)之间的互联.BGP的最主要功能在于控制路由的传播和选择最好的路由.BGP是Internetproje ...
- [hihoCoder] #1032 : 最长回文子串
时间限制:1000ms 单点时限:1000ms 内存限制:64MB 描述 小Hi和小Ho是一对好朋友,出生在信息化社会的他们对编程产生了莫大的兴趣,他们约定好互相帮助,在编程的学习道路上一同前进. 这 ...
- 安装perl的版本控制器perlbrew
perlbrew可以用源码方式安装perl的各种版本,可以容纳多个perl版本共存,并随意切换. 1.把perlbrew安装到home目录: curl -L https://install.perlb ...