从arraylist获取绑定值

时间:2018-11-22 11:50:30

标签: java

具有原始条件的更新版本。

名为getMost的方法,该方法采用单个整数参数并返回 个性对象的ArrayList。您可以假设 参数的值将大于或等于0,但可能会更大 比竞赛对象列表中的项目数多。 此方法必须返回一个包含Personality的ArrayList 比赛中票数最高的对象。 ArrayList返回 必须不同于“竞赛”对象中的对象,但 个性对象将是相同的。例如,如果参数是 3然后该方法必须创建一个新的ArrayList,在其中存储三个 具有最高投票数的个性对象,然后将其返回 列表。

编写此方法时,应考虑以下特殊情况: •如果参数的值大于或等于个性数 在列表中,然后将返回所有个性。 •可能会有平局,这可能意味着返回的列表可能 包含的对象多于参数值。例如,如果前3名是 且前五名人物分别获得100、98、50、50和42票,然后 必须返回四个人格。另一方面,如果前3名是 且前五位分别获得100、100、98、50、50和42票 将返回三个。

代码已删除>>

1 个答案:

答案 0 :(得分:1)

我不知道您是否被允许使用流。但这段代码可以满足您的要求:(数字是带有数字的列表)

private static long getNumber(int number) {
    if (number < 1 || number >= numbers.size()) return number;
    int numberFromList = numbers.get(number - 1);
    return (number + numbers.stream().filter(n -> n == numberFromList).count()) - 1;
}

下次,请添加一些您已经尝试过的代码。