Я думаю, что лучшим и наиболее гибким вариантом для этого является класс Гуава Splitter .С его помощью у вас есть большой контроль над тем, как вы разделяете строку, и он возвращает Iterable<String>
токенов, полученных в результате разделения.Вы на самом деле не указали, что именно вы хотите сделать, для чего чтение токена токеном является «неэффективным», но если вы предпочитаете, например, List
, вы можете просто преобразовать Iterable
в список, используяLists.newArrayList(Iterable)
или ImmutableList.copyOf(Iterable)
.