第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會有你想問的

在 Java 中使用 scheduleAtFixedRate 遍歷列表

在 Java 中使用 scheduleAtFixedRate 遍歷列表

FFIVE 2023-06-08 14:48:21
我正在嘗試根據(jù)用戶可以設(shè)置的計(jì)時(shí)器遍歷列表。但是我找不到在TimerTaskrunnable中做這件事的好方法??傮w思路可以在我下面分享的代碼中找到。Announcements是List一個(gè)List<String>。在每個(gè)間隔上,我都想announcement從中獲取下一個(gè)間隔announcements并顯示其中的字符串。除了計(jì)時(shí)器超過多個(gè),我已經(jīng)完成了所有工作announcements: timer.scheduleAtFixedRate(new TimerTask() {        int iterator = 0;        @Override        public void run() {            List<String> announcement = announcements.get(iterator);            for (String line : announcement) {                Bukkit.broadcastMessage(line);            }            iterator++;            if(iterator > announcements.size()){                iterator = 0;            }        }    }, 0, (int)config.get("interval")*1000);使用我發(fā)布的代碼,我得到了一個(gè)IndexOutOfBoundsException,它甚至從不發(fā)布任何消息。如果我刪除迭代器代碼,它將announcement無休止地顯示第一個(gè)。
查看完整描述

1 回答

?
qq_花開花謝_0

TA貢獻(xiàn)1835條經(jīng)驗(yàn) 獲得超7個(gè)贊

您有錯(cuò)誤的以下情況:

if(iterator?>?announcements.size())

在這種情況下,超出了列表的大小,因此IndexOutOfBoundsException被拋出。但是條件應(yīng)該檢查是否iterator大于或等于列表的大?。?/p>

if(iterator?>=?announcements.size())


查看完整回答
反對 回復(fù) 2023-06-08
  • 1 回答
  • 0 關(guān)注
  • 135 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號