for(int i=0;i<1000;i++){
System.out.print("progress: "+i);
}
对于上面的循环程序在Windows命令提示符下运行,但我想在1000次循环中在cmd.exe屏幕中只出现一行,比如,第一次循环会输出progress: 1,第二次输出时不要让换行重复输出progress,而是只修改已经输出在屏幕上的1,把1改成2,依次类推。这种表示执行进度的效果能实现吗?若能如何实现?
Java中System.out.print()在命令提示符下打印时是否可以一边打印一边修改输出的值?
答案:6 悬赏:0 手机版
解决时间 2021-03-18 22:43
- 提问者网友:夢醒日落
- 2021-03-17 23:52
最佳答案
- 五星知识达人网友:舊物识亽
- 2021-03-18 01:10
可以...每输出一次 回车一个 就能把上次的 覆盖
如果/r不可以的话 你还可以采用 回退/b来覆盖
for(int i=0;i<1000;i++){
System.out.print("progress: "+i+"\r");//这个我只是给你个提示 我这里没测试
}
如果/r不可以的话 你还可以采用 回退/b来覆盖
for(int i=0;i<1000;i++){
System.out.print("progress: "+i+"\r");//这个我只是给你个提示 我这里没测试
}
全部回答
- 1楼网友:青灯有味
- 2021-03-18 03:29
这个本来就在一行啊!只是频幕上放不下,所以转在了下一行,你想表示进度,,那你用进度条那个类啊!这咋能表示进度呢
- 2楼网友:轻熟杀无赦
- 2021-03-18 03:13
s[1]=new string(" ");你改成一个有值的就不会错了
原因
println
public void println()通过写入行分隔符字符串终止当前行。行分隔符字符串由系统属性 line.separator 定义,不一定是单个新行字符 ('\n')。
- 3楼网友:空山清雨
- 2021-03-18 02:22
我没试过,不过我感觉应该可以实现。可以在打印下一个号码之前,先调用相关API,把控制台上一次的输出给清空了,然后再打印新的号码。你感兴趣可以试试,也不一定能成功,只是一种思路而已。更多的是用GUI来实现进度条效果了。
- 4楼网友:英雄的欲望
- 2021-03-18 01:35
public static void main(String[] args){
for(int i=0;i<1000;i++){
System.out.println("progress: "+i);
}
}
- 5楼网友:第四晚心情
- 2021-03-18 01:28
for(int i=0;i<1000;i++){
Runtime.getRuntime().exec("cls");
System.out.print("progress: "+i);
}
试试这个,没测试,很久没用过cmd跑java了
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯