Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/384.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在java(终端窗口)中打印时是否可以返回到特定行?_Java_Bluej - Fatal编程技术网

在java(终端窗口)中打印时是否可以返回到特定行?

在java(终端窗口)中打印时是否可以返回到特定行?,java,bluej,Java,Bluej,我正在BlueJ上练习Java的基本编程,并正在做一个个人项目,在这个项目中,程序将根据输入以“*”的形式打印每5行字符。 我想知道是否有办法返回到BlueJ终端窗口中的特定行,或者我必须以其他方式工作 如果有人能提出一些简化程序的建议,那将很有帮助。一种与操作系统无关、与设备无关的通用方法是制作一个代表屏幕的二维字符数组。作为一个数组,您当然可以按任何顺序填充它。一旦准备好,一个简单的嵌套循环就可以将内容打印到输出流。而且语言独立 这种方法可能存在的问题包括输出值高达数千行,或行太宽。一行作品

我正在BlueJ上练习Java的基本编程,并正在做一个个人项目,在这个项目中,程序将根据输入以“*”的形式打印每5行字符。 我想知道是否有办法返回到BlueJ终端窗口中的特定行,或者我必须以其他方式工作


如果有人能提出一些简化程序的建议,那将很有帮助。

一种与操作系统无关、与设备无关的通用方法是制作一个代表屏幕的二维字符数组。作为一个数组,您当然可以按任何顺序填充它。一旦准备好,一个简单的嵌套循环就可以将内容打印到输出流。而且语言独立


这种方法可能存在的问题包括输出值高达数千行,或行太宽。

一行作品,多行编号。您必须重新打印。因此,基本上不可能在打印多行后跳转到上一行?@AdrianLeonhard@GabrielNegutt从技术上讲,您可以通过一些特定于本机平台的代码来实现,但这对于您的用例来说太复杂了。写一大堆新行来清除控制台,然后重新打印,就这样。但是如果不借助操作系统特定的代码,就无法知道屏幕大小,因此只能将数组设置得足够大,并希望不要在实际屏幕的边界之外进行写写。@GabrielNegut Right!这就是我在最后一行想说的。因此,一种解决方案是使用一些最小的依赖于系统的代码来确定屏幕大小,并将其传递给我们的渲染方法。移植时,只需更改包装器。@Abhay,谢谢,这似乎是一种可行的方法。我试试看。