所以我正在开发一个插件插件。这是关于朋友的。如果该人执行命令查看他朋友的列表,我需要有页面,每个页面包含7个朋友。问题是,它不是一个朋友列表,总是和你的朋友列表改变的人一样。
案例我有10个朋友。 我会在第一页上找到7个朋友,在第二页上找到剩下的3个朋友。 案例我有70个朋友。 我要10页。
编辑:很抱歉混淆。我的问题是:如何在示例中做到这一点。如果他没有7,则玩家会/朋友列表显示第1页和7位朋友或更少。他是否有更多会有第二页:/朋友列表2.依此类推。答案 0 :(得分:2)
这是如何计算需要多少页面的代码。它可以在95%的时间内工作,如果有人知道更好的解决方案,请编辑它,因为我也希望改进这个算法。
int friendsPerPage = 5;
int friendsIHave = 20;
int pages = (friendsIHave / friendsPerPage ) + (friendsIHave % friendsPerPage == 0 ? 0 : 1);
我假设您知道如何获取/好友列表(LISTHERE)。让我们将LISTHERE存储到页面变量中。然后我们可以简单地打印出它的内容:
int page = ... // you have to make this one
int max = page * friendsPerPage;
int min = max - friendsPerPage;
for(int i = min + 1; i <= max; i++) { // loop through all friends in that page
// access your friend array here and print it out using "i"
}
我希望它能让你走上正轨!
答案 1 :(得分:0)
你会如何看待朋友?
作为GUI(Inventar)还是聊天?
GUI代码(未完成):
ArrayList<String> players = new ArrayList<>();
int pages = ((players.size-(players.size()%7))/7)+(players.size()%7 == 0 ? 0 : 1);
ArrayList<String>[] pages = new ArrayList<>()[pages];
int lastpage = 0;
int i = 0;
for(String name : players)
{
pages[lastpage].add(name);
i++;
if(i == 6){
i = 0;
lastpage ++;
}
}
pages 是一个页面数组。 你如何展示它们是你的决定。