因此,在我的聊天機器人程序中,我想讓它在等待大約2秒後等待它回答之前說了些什麼。我嘗試了睡眠方法,但這使得我所說的延遲以及... 我試圖找到等待方法上的東西,但我似乎無法找出它是如何工作的,所以這裏是我的一段代碼來回答。 我想在等待2秒後再做「addText(ft.format(dNow)+」| - >你:\ t「+ quote);」部分,然後編寫聊天機器人Chatbot在說點什麼和獲得答案之間的延遲
if(e.getKeyCode()==KeyEvent.VK_ENTER)
{
Date dNow = new Date();
SimpleDateFormat ft =
new SimpleDateFormat ("hh:mm:ss");
input.setEditable(false);
//-----grab quote-----------
String quote=input.getText();
input.setText("");
addText(ft.format(dNow) + " |-->You:\t"+quote);
quote.trim();
while(
quote.charAt(quote.length()-1)=='!' ||
quote.charAt(quote.length()-1)=='.' ||
quote.charAt(quote.length()-1)=='?'
)
{
quote=quote.substring(0,quote.length()-1);
}
quote=quote.trim();
byte response=0;
//-----check for matches----
int j=0;//which group we're checking
while(response==0){
if(inArray(quote.toLowerCase(),chatBot[j*2]))
{
response=2;
int r=(int)Math.floor(Math.random()*chatBot[(j*2)+1].length);
addText("\n" + ft.format(dNow) + " |-->Miku\t"+chatBot[(j*2)+1][r]);
if(j*2==0){
try (BufferedReader br = new BufferedReader(new FileReader("mikuname.txt"))) {
String name;
while ((name = br.readLine()) != null) {
addText(name +"!");
}
} catch (IOException e1) {
// Do something with the IO problem that occurred while reading the file
}
}
}
j++;
if(j*2==chatBot.length-1 && response==0)
{
response=1;
}
}