使用特殊字符控制Console输出

如果要在console上打印 Hello + 1到10,最简单的如下:

		for(int i =1;i<11;i++){
			System.out.println("Hello "+i);
			Thread.sleep(2000);
		}

 不过这样打出来的就是10行了:

Hello 1
Hello 2
Hello 3
Hello 4
Hello 5
Hello 6
Hello 7
Hello 8
Hello 9
Hello 10

 如果想打印在一行,只是每次数值字改变,怎么办?

这个时候就可以用到特殊字符 \r (回车符),如下:

		for(int i =1;i<11;i++){
			System.out.printf("Hello %d\r", i);
			Thread.sleep(2000);
		}

 \r 会把光标移位到当前行的最前,然后刷新输出。

 

更进一步:可以看出,每次前部分的输入 Hello 总是固定的,所以如果能不重新输入Hello,而只是修改数字部分,就更好了?

这个时候可以用退格符 \b 来实现,例如:

		System.out.print("Hello ");
		for(int i =1;i<11;i++){
			System.out.printf("%d\b", i);
			Thread.sleep(1000);
		}

 

另外像扑克牌字符是数字3到6:

		for(int i = 3;i<7;i++){
			System.out.print((char)i);
		}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值