java:格式化字符串(四)

关键词

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);
	}
}

运行结果

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值