java-stream

    2热度

    4回答

    我找不到答案,因此我必须发布一个新问题 - 虽然它似乎与其他几个已经问过的问题类似 - 但是要点: 我已经得到了一些列表,例如: private static List<Book> books = new ArrayList<>(); 它包含Book类,在那里我有 private String title; private String author; 和getter的对象二传手。 现在

    -4热度

    2回答

    我有一组私有方法用于一个类的主要公共方法(接收列表),这些方法将主要使用java 8经典流操作,如filter,map,count e.t.c.我想知道如果在公共API中创建流单播并传递给其他方法而不是传递列表有任何性能优势或考虑因素,因为.stream()被称为单播时间。

    1热度

    4回答

    我正在尝试学习Java 8.有没有办法将下面的方法转换为Java 8流,filter和forEach。如果是这样,怎么样? protected void isValidId(CarModel model, List<String> errors) throws DataAccessException { CarStyle[] styles = model.getStyles();

    1热度

    1回答

    我在下面写下类似于“老派”的版本,其中我试图在给定的List中收集和分组相似之处。我想把这个解决方案转入,我觉得更好,functional用grouping或者更多的东西java 8 stream的方式。 其实我想摆脱List<List<T>> listOfLists = new LinkedList<List<T>>();的初始化并将此实例传递给getMatchedList方法。 这是我目前的解

    1热度

    3回答

    后不保留顺序我有一个列表名称availableSeats我整理并通过blockIndex属性分组如下图所示: availableSeats.stream() .sorted(Comparator.comparing(SeatedTicketAssignment::getBlockIndex)) .collect(Collectors.groupingBy(Seate

    5热度

    3回答

    我对java8流中map()和forEach()方法之间的区别感到困惑。例如, List<String> strings = Lists.newArrayList("1", "2"); Map<String, String> map = Maps.newHashMap(); strings.stream().map(s->map.put(s, s)); System.out.println(

    0热度

    1回答

    有什么方法可以使用Java 8的流API优雅地初始化并填充多值Map<K,Collection<V>>? 我知道这是可能使用Collectors.toMap(..)功能创建一个单值Map<K, V>: Stream<Person> persons = fetchPersons(); Map<String, Person> personsByName = persons.collect(Colle

    3热度

    2回答

    我正在尝试将我们的传统循环转换为流的框架。我的问题是我写了两个独立的逻辑来获得价格和颜色,但我想合并这两个在一起,这将是像样 代码来获取价值 List<Double> productPrices = product.getUpcs() .stream() .map(e -> e.getUpcDetails().getPrice().getRetail().getPric

    1热度

    1回答

    平均我有对象的列表 class Result { private String name; private Map<String, Double> map; // getters, constructor etc } 我想通过名称组它,并进行双值的平均值的地图每个键。列表中的每个对象都具有相同键的地图。 我开始按名称 Map <String, List<Res

    -2热度

    3回答

    我有一个类的字段日期,ID和行动。在我的情况下,我有旧项目列表和另一个列表,其中包括旧项目和新项目,所以我想过滤旧项目,所以我不介意他们。例如,我遍历新项目,只使用不属于旧项目列表的项目。 随着循环,它看起来是这样,但我想 List<Item> filteredList = new ArrayList<>(); for (Item item : newList) { for