java中格式化输出中文时,这个该怎么解决。(自学求指导)

打印的内容“亚里士多德”超过了八位导致多输出八个空格。

但是写成System.out.printf("%-12s",y[i/6][i%6])的话,输出是会将中文一个字看成一位,在后面补齐剩余的空格。

有没有解决方案,感谢。

String[] x = {"李大牛","李二牛","王莽","赵匡胤","松江","孙悟空","宋玉","李煜","白居易","宋霭龄","爱新觉罗","宋工","欧阳修","李冰","维克多","路易十六","亚里士多德","苏格拉底"};
		String[][] y =new String[3][6];

		for(int i=0;i<x.length;i++){
			y[i/6][i%6] = x[i];
			System.out.printf("%s\t\t",y[i/6][i%6]);
			if(i%6==5&i!=x.length-1)
				System.out.println();
		}
		

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值