1

我喜欢在 intelliJ 中使用 REPL 来解决编码问题,就像你在 codesignal 上发现的那样。我目前有以下版本:

IntelliJ IDEA 2019.1.3 (Ultimate Edition)
Build #IU-191.7479.19, built on May 27, 2019
JRE: 1.8.0_202-release-1483-b58 x86_64
JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o
macOS 10.14.4

我一直很困惑,当运行任何这些临时文件时,我试图打印输出的前 5-9 行将不存在。

下面是一个示例程序,可以将 X 的金字塔打印到控制台

fun createPyramid(height: Int, drawChar: String = "X") {
//    repeat(9) {
//        println("blank")
//    }

    for (i in 1 until height) {
        val blank = " ".repeat(height - i)
        val row = blank + drawChar.repeat(i * 2 - 1)
        println(row)
    }
}

createPyramid(11)

如果我将重复块注释掉,我的输出如下所示:

切断打印

如果我取消注释重复,我将得到如下输出:

完整的金字塔

这种情况真正令人困惑的部分是行数似乎是随机的,并且它的工作方式存在不一致。如果我这样做,repeat(9)我通常会得到 1 实际上打印出“空白”如果我repeat(8)大部分时间都这样做,它实际上不会从金字塔中输出第一个预期的“X”。

4

1 回答 1

1

划痕的输出直接在提供此输出的表达式旁边的编辑器中打印。Scratch Output 工具窗口仅打印不适合编辑器的输出。

于 2019-07-01T19:58:35.043 回答