From b53aafa81b56d9d68cd94b552c3595617bbc3461 Mon Sep 17 00:00:00 2001 From: LamGC Date: Fri, 24 Apr 2020 01:41:53 +0800 Subject: [PATCH] =?UTF-8?q?[Fix]=20RandomRankingArtworksSender=20=E4=BF=AE?= =?UTF-8?q?=E5=A4=8D=E6=8E=92=E8=A1=8C=E6=A6=9C=E9=80=89=E5=8F=96=E9=94=99?= =?UTF-8?q?=E8=AF=AF=E7=9A=84=E9=97=AE=E9=A2=98;=20[Add]=20RandomRankingAr?= =?UTF-8?q?tworksSender=20=E5=A2=9E=E5=8A=A0=E5=AF=B9rankingStart,=20ranki?= =?UTF-8?q?ngStop=E7=9A=84=E8=8C=83=E5=9B=B4=E9=80=89=E5=8F=96=E6=A3=80?= =?UTF-8?q?=E6=9F=A5;=20[Update]=20RandomRankingArtworksSender=20=E6=9B=B4?= =?UTF-8?q?=E6=96=B0Javadoc;?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../net/lamgc/cgj/bot/RandomRankingArtworksSender.java | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/main/java/net/lamgc/cgj/bot/RandomRankingArtworksSender.java b/src/main/java/net/lamgc/cgj/bot/RandomRankingArtworksSender.java index a1e9537..69b4766 100644 --- a/src/main/java/net/lamgc/cgj/bot/RandomRankingArtworksSender.java +++ b/src/main/java/net/lamgc/cgj/bot/RandomRankingArtworksSender.java @@ -26,15 +26,19 @@ public class RandomRankingArtworksSender extends AutoSender { /** * 构造一个推荐作品发送器 * @param messageSender 消息发送器 - * @param rankingStart 排行榜开始范围(从1开始, 名次) - * @param rankingStop 排名榜结束范围(包括该名次) + * @param rankingStart 排行榜开始范围(从1开始, 名次),如传入0或负数则为默认值,默认为1 + * @param rankingStop 排名榜结束范围(包括该名次),如传入0或负数则为默认值,默认为150 * @param quality 图片质量, 详见{@link net.lamgc.cgj.pixiv.PixivDownload.PageQuality} + * @throws IndexOutOfBoundsException 当 rankingStart > rankingStop时抛出 */ public RandomRankingArtworksSender(MessageSender messageSender, int rankingStart, int rankingStop, PixivDownload.PageQuality quality) { super(messageSender); log = LoggerFactory.getLogger("RecommendArtworksSender@" + Integer.toHexString(this.hashCode())); this.rankingStart = rankingStart > 0 ? rankingStart : 1; this.rankingStop = rankingStop > 0 ? rankingStop : 150; + if(this.rankingStart > this.rankingStop) { + throw new IndexOutOfBoundsException("rankingStart=" + this.rankingStart + ", rankingStop=" + this.rankingStop); + } this.quality = quality == null ? PixivDownload.PageQuality.REGULAR : quality; } @@ -50,7 +54,7 @@ public class RandomRankingArtworksSender extends AutoSender { } queryDate = calendar.getTime(); - int selectRanking = rankingStart + new Random().nextInt(rankingStop + 1); + int selectRanking = rankingStart + new Random().nextInt(rankingStop - rankingStart + 1); try { List rankingList = BotCommandProcess.getRankingInfoByCache( PixivURL.RankingContentType.TYPE_ILLUST,