简单的暂停操作
##多线程(二)
定义一个线程类,用于输出一个字符串,并且以打字机的效果输出(即人可以观察到字符是逐个逐个输出的,要求每个字符输出后停顿1秒)。要求输出的字符串从键盘读入。例如:
当输出的字符串是china,则先输出c,然后停顿1秒后再输出h,以此类推。可能的输出效果如下图所示:
具体代码如下:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个字符串:");
while(sc.hasNext()) {
String str= sc.nextLine();
//创建m个线程对象
MyThread netAnt = new MyThread(str);
netAnt.start();
System.out.println("请输入一个字符串:");
}
}
}
class MyThread extends Thread{
private String str;
public MyThread() {
this("");
}
public MyThread(String str){
this.str =str;
}
@Override
public void run(){
for(int i = 0;i < str.length();i++){
System.out.print(str.charAt(i));
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
System.out.println();
}
}