gpt4 book ai didi

java - 如何减慢java中特定方法的执行速度

转载 作者:行者123 更新时间:2023-11-29 06:03:48 24 4
gpt4 key购买 nike

我的目标是让我编写的方法(更新到 swing 模块)在循环中以 500 毫秒的延迟运行。例如,我的循环大致如下所示:

public final void doBubbleSort(String numbers[], JButton numButton[]){
for (int k = 0; k < numbers.length - 1; k++) {
String str1 = "";
boolean isSorted = true;

for (int i = 1; i < numbers.length - k; i++){
if (Integer.parseInt(numbers[i]) < Integer.parseInt(numbers[i - 1]) ){
String tempVariable = numbers[i];
numbers[i] = numbers[i - 1];
numbers[i - 1] = tempVariable;
isSorted = false;
str1 = numButton[i].getText();
numButton[i].setBackground(Color.RED);
numButton[i-1].setBackground(Color.RED);

//Pause here for 500 ms

numButton[i].setText(numButton[i-1].getText());
numButton[i-1].setText(str1);
numButton[i].setBackground(null);
numButton[i-1].setBackground(null);

}
}

if (isSorted)
break;
}

}

编辑:为了更好地阐明我的目标:我的目标是通过将颜色更改为红色来突出显示将在冒泡排序中交换的两个数字,等待 .5s 然后交换它们并将它们的颜色返回为空(我已经修改将颜色更改为 null 的代码,而不是像以前那样更改为 Color.WHITE )。抱歉造成混淆。

最佳答案

使用 javax.swing.Timer类以指定的时间间隔执行事件。这种机制将确保 Swing 组件在事件调度线程中被修改。

关于java - 如何减慢java中特定方法的执行速度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9214722/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com