Java 摆动等待
Java Swing Wait
我正在编写 java 代码,我需要等待几毫秒。
while(true)
{
//wait
//more code
}
如何让我的代码等待?我通常用 C# 编写代码,我可以做到 Thread.Sleep()
,但我没有找到让它在 java 中工作的方法。另外,如果您想知道,这是我当前的完整代码:
import javax.swing.*;
import java.util.*;
class Main{
public static void main(String [] arg){
Boolean isEnded = false;
Scanner newScan = new Scanner(System.in);
JFrame jf = new JFrame("Weird 3N+1 Calculator");
JLabel jl = new JLabel("No Seed Entered.");
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
jf.setSize(300,300);
jf.getContentPane().add(jl);
jf.setVisible(true);
System.out.println("Enter a seed: ");
String seed = newScan.nextLine();
Integer x = Integer.valueOf(seed);
while(isEnded == false)
{
//Thread.sleep(100);
if(x == 1)
{
isEnded = true;
jl.setText("Last Number Is: " + x);
}
else
{
if(x % 2 == 0)
{
System.out.println(x / 2);
x = x / 2;
jl.setText("Now:" + x);
}
else
{
System.out.println(x * 3 + 1);
x = x * 3 + 1;
jl.setText("Now:" + x);
}
}
}
}
}
此外,我刚开始在 Java 中编码。我的代码可能制作得不好,可以改进。谢谢
-我
在这里最好的等待方法是Thread.sleep(n)
方法。在有多个线程的情况下,您可以通过调用 treadB.join()
方法告诉 threadA
等待 treadB
完成。
我正在编写 java 代码,我需要等待几毫秒。
while(true)
{
//wait
//more code
}
如何让我的代码等待?我通常用 C# 编写代码,我可以做到 Thread.Sleep()
,但我没有找到让它在 java 中工作的方法。另外,如果您想知道,这是我当前的完整代码:
import javax.swing.*;
import java.util.*;
class Main{
public static void main(String [] arg){
Boolean isEnded = false;
Scanner newScan = new Scanner(System.in);
JFrame jf = new JFrame("Weird 3N+1 Calculator");
JLabel jl = new JLabel("No Seed Entered.");
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
jf.setSize(300,300);
jf.getContentPane().add(jl);
jf.setVisible(true);
System.out.println("Enter a seed: ");
String seed = newScan.nextLine();
Integer x = Integer.valueOf(seed);
while(isEnded == false)
{
//Thread.sleep(100);
if(x == 1)
{
isEnded = true;
jl.setText("Last Number Is: " + x);
}
else
{
if(x % 2 == 0)
{
System.out.println(x / 2);
x = x / 2;
jl.setText("Now:" + x);
}
else
{
System.out.println(x * 3 + 1);
x = x * 3 + 1;
jl.setText("Now:" + x);
}
}
}
}
}
此外,我刚开始在 Java 中编码。我的代码可能制作得不好,可以改进。谢谢
-我
在这里最好的等待方法是Thread.sleep(n)
方法。在有多个线程的情况下,您可以通过调用 treadB.join()
方法告诉 threadA
等待 treadB
完成。