У меня есть класс SomeClass
со статическим членом myMap
enter code here
который имеет форму HasmMap<String,ArrayList<SomeOtherClass>>
, которая де-сериализуется из файла.Как правильно вернуть часть ArrayList в Java?
У меня есть метод
public ArrayList<SomeOtherClass> getList(final String key, final int N)
, который, как предполагается, для поиска key
на карте и возвращать первые N
элементов соответствующего ArrayList
, или все дело, если в списке есть <= N
элементов. Как я должен реализовать TODO
строку ниже:
public ArrayList<SomeOtherClass> getList(final String key, final int N)
{
ArrayList<SomeOtherClass> arr = myMap.get(key);
if (arr == null) return null;
if (arr.size() <= N)
{
return arr;
}
else
{
// TODO: return first N elements
}
}
сделать это эффективно, т.е. без создания ненужных копий в памяти, а на самом деле возвращаются правильные данные?
Существует метод 'subList'. Вы можете использовать его. –