常规类型格式化

  • 关键词
  • 相关说明
  • 常规字符串图表:
  • 源码
  • 运行结果


关键词

String s=String.format("%b",SSS);

相关说明

其中SSS可以放等式或不等式,它们的结果会被格式化为指定的类型,这里%b就是格式化为布尔类型,输出true或false。用法还是format的用法一样,不过不用创建Date类(时间一类)。对于format的方法虽然都一样,只是格式化成的类型不同,我尽量把每一类都体验一次。

常规字符串图表:

转换符

说明

示例

%b、%B

结果被格式化为布尔类型

true、FALSE

%h、%H

结果被格式化成散列码

1E

%s、%S

结果被格式化为字符串类型

“aoe”

%c、%C

结果被格式化为字符类型

‘a’

%d

结果被格式为十进制整数

29

%o

结果被格式化为八进制整数

00100

%x、%X

结果被格式化为十六进制整数

7E1

%e

结果被格式化为用计算机科学计数法表示的十进制

1.700000e+00

%a

结果被格式化为带有有效位数和指数的十六进制浮点值

0x1.f1a9fbe76c8b4p1

%n

结果为特定于平台的行分隔符

%%

结果为字面值‘%’

%

源码

class Demo{
	public static void main(String[] args){
		String bool=String.format("%b",2<3);//布尔类型,判断2<3是否正确
			System.out.println("%b 判断2<3是否正确:"+bool);
		String bool2=String.format("%B",4>8);//布尔类型,判断4>8是否正确
			System.out.println("%B 判断4>8是否正确:"+bool2);
		String bool3=String.format("%B",5<8);//布尔类型,判断5<8是否正确
			System.out.println("%B 判断5<8是否正确:"+bool3);
		String liema=String.format("%h",30);//30的散列码
			System.out.println("%h 30的散列码:"+liema);
		String liema2=String.format("%H",30);//30的散列码
			System.out.println("%H 30的散列码:"+liema2);
		String liema3=String.format("%h",800);//800的散列码
			System.out.println("%h 800的散列码:"+liema3);
		String liema4=String.format("%H",800);//800的散列码
			System.out.println("%H 800的散列码:"+liema4);
		String str=String.format("%s","aoe");//aoe格式化成字符串
			System.out.println("%s aoe格式化成字符串:"+str);
		String str2=String.format("%S","aoe");//aoe格式化成字符串
			System.out.println("%S aoe格式化成字符串:"+str2);
		String zhifu=String.format("%c",'p');//p格式化成字符串
			System.out.println("%c p格式化成字符串:"+zhifu);
		String zhifu2=String.format("%C",'p');//p格式化成字符
			System.out.println("%C p格式化成字符串:"+zhifu2);
		String zhifu3=String.format("%c",'$');//$格式化成字符
			System.out.println("%c $格式化成字符串:"+zhifu3);
		String zhifu4=String.format("%C",'$');//$格式化成字符
			System.out.println("%C $格式化成字符串:"+zhifu4);
		String jin10=String.format("%d",000100);//二进制00100格式化成十进制
			System.out.println("%d 00100格式化成10进制:"+jin10);
		String jin8=String.format("%o",116);//116转化成八进制
			System.out.println("%o 116转化成八进制:"+jin8);
		String jin16=String.format("%x",116);//116转化成十六进制
			System.out.println("%x 116转化成十六进制:"+jin16);
		String jin162=String.format("%X",2017);//2017转化成十六进制
			System.out.println("%X 2017转化成十六进制:"+jin162);
		String jin101=String.format("%e",1.70000);//格式化为计算机科学计数法表示的十进制
			System.out.println("%e 1.70000格式化为计算机科学计数法表示的十进制:"+jin101);
		String jin163=String.format("%a",3.888);//被结果被格式化为带有效位数和指数的十六进制浮点值
			System.out.println("%a 3.888被格式化为带有效位数和指数的十六进制浮点值:"+jin163);
		String fenge=String.format("%n",8);//8(结果)作为平台的行分割符
			System.out.println("%n:结果为8时作为平台行的分割符:"+fenge);
		String fuhao=String.format("%%",8-3);//结果是8-3时用%代替
			System.out.println("%% 结果为8-3用字面值%代替:"+fuhao);
		String fuhao2=String.format("%%",5);//结果是5时用%代替
			System.out.println("%% 结果为5用字面值%代替:"+fuhao2);
	}
}

运行结果

java 位数 字符串格式化 java中字符串格式化_java基础