Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/310.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.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 - Fatal编程技术网

在JAVA中显示每个字符之间有延迟的字符

在JAVA中显示每个字符之间有延迟的字符,java,Java,我想让我的文本看起来像是被键入的。。 就像我想打印你一样好吧,那么它必须像 y延迟o延迟u延迟o延迟k。。。 我的这段代码工作得很好,但它总是打印在新的行中 String text = "you ok...:)"; for(int i=1; i<=text.length();i++){ System.out.print(text.substring(0, i)); try { Thread.sleep

我想让我的文本看起来像是被键入的。。 就像我想打印你一样好吧,那么它必须像 y延迟o延迟u延迟o延迟k。。。 我的这段代码工作得很好,但它总是打印在新的行中

        String text = "you ok...:)";
        for(int i=1; i<=text.length();i++){

        System.out.print(text.substring(0, i));
        try {
            Thread.sleep(100); 
            } catch (Exception e) {
            e.printStackTrace();
            }
        }

第一个问题是从1开始i,它应该从0开始。所以charAt0是你的第一个角色

其次,您应该只使用text.charAti打印字符,而不是整个子字符串

希望这有助于:

   String text = "you ok...:)";
    for(int i=0; i<text.length();i++){

    System.out.print(text.charAt(i));
    try {
        Thread.sleep(100); 
        } catch (Exception e) {
        e.printStackTrace();
        }
    }

第一个问题是从1开始i,它应该从0开始。所以charAt0是你的第一个角色

其次,您应该只使用text.charAti打印字符,而不是整个子字符串

希望这有助于:

   String text = "you ok...:)";
    for(int i=0; i<text.length();i++){

    System.out.print(text.charAt(i));
    try {
        Thread.sleep(100); 
        } catch (Exception e) {
        e.printStackTrace();
        }
    }

这是您想要的工作示例

public class Stackoverflow {

public static void main(String[] args) 
{
   String text = "you ok...:)";
   char[] charArr = text.toCharArray();

    for(int i=0; i<=charArr.length-1;i++)
    {

        System.out.print(charArr[i]);
        try 
        {
            Thread.sleep(1000); 
        } catch (Exception e) 
        {
            e.printStackTrace();
        }
    }

}
}

这是您想要的工作示例

public class Stackoverflow {

public static void main(String[] args) 
{
   String text = "you ok...:)";
   char[] charArr = text.toCharArray();

    for(int i=0; i<=charArr.length-1;i++)
    {

        System.out.print(charArr[i]);
        try 
        {
            Thread.sleep(1000); 
        } catch (Exception e) 
        {
            e.printStackTrace();
        }
    }

}
}

你是用eclipse来测试它吗?你意识到你实际上是在打印y,然后是yo,然后是你等等-所以你到最后会打印y 10次…是的…bt我想打印在同一行,每个字符只显示一次…你是用eclipse来测试它吗?你意识到你实际上是在打印y,然后是yo,然后你等等-所以你会在最后打印y 10次…是的…bt我想在同一行中打印它,每个字符只显示一次…不,不是…它只是一次打印整行…但我想它只是在屏幕上打印…@UmerSajjad嗯,不太清楚你的意思,难道你不想打印整条字符串吗?如果你想让它更人性化,只需将睡眠时间增加到500不,它不是……它只是一次打印整行……但我希望它只是在屏幕上打印出来……@UmerSajjad嗯,不太清楚你的意思,你不想打印整行吗?如果你想让它更人性化,只需使用@nafas中所示的charAt将睡眠时间增加到500分钟,答案比使用toCharArray要有效得多。此外,如@nafas'答案所示,使用charAt比使用toCharArray更有效。我也