java-stream相关内容
我已经在这个问题上挣扎了几天了。我正在尝试使用Java Streams创建透视功能。我只需要执行 总和、计数、最大值、最小值和平均值。对于输入,我得到一个透视表列索引、一个透视表行索引数组和要计算的值。 问题是数据在列表中,其中对象可以是字符串、整数或双精度。但我要到运行时才能知道。我必须以List<;List<;Object>的形式返回我的结果。 我遇到了MAX/MIN问题(
..
我想使用Java 8流API转换以下代码 List deck = new ArrayList(); for (Suit s: Suit.values()) { for (Rank r: Rank.values()) { deck .add(new Card(r, s)); } } 我拿出了这个 List deck
..
我希望使用STREAMS实现以下目标: List list1 = Arrays.asList(obj1, obj2, obj3); List list2 = Arrays.asList(true, false, true); List list = new ArrayList(); for(int i=0; i
..
我有以下代码,它对于多个空检查来说有点难看。 String s = null; if (str1 != null) { s = str1; } else if (str2 != null) { s = str2; } else if (str3 != null) { s = str3; } else { s = str4; } 所以我试着像下面这样使用O
..
我想知道某一特定分支机构在某一年的平均销售额。有一张清单,上面有所有的分店和销售年限。我尝试使用IntStream来筛选具有所需年份和分支的元素,但我找不到平均值,indexOfSaleInTheYear.size()中显示错误,并且我不确定平均部件代码是否正确。请帮帮忙。谢谢。 Scanner avgSale = new Scanner(System.in); System.out
..
Java Streams同时使用sorted和limit方法,这两个方法分别返回流的排序版本和仅返回流中指定数量的项的流。当连续应用这些操作时,如: stream.sorted().limit(qty).collect(Collectors.toList()) 是以对qty个项目进行排序的方式执行排序,还是对整个列表进行排序?换句话说,如果qty是固定的,那么这个操作在O(n)中吗?文档
..
我有以下情况 Map map; public class ListContainer { List lst; } 我必须合并Map映射中ListContainer对象的所有列表lst。 public static void main(String[] args) { List alltheObje
..
我有一个List,其中每个Student可能有多个爱好: public class StudentData { public static List getData() { return Arrays.asList( new Student(1, "a1", 1, Arrays.asList("cricket
..
我尝试从流中获取列表,但我有一个例外. 这是带有对象列表的 Movie 对象. 公共类电影{私有字符串示例;私人列表电影翻译;公共电影(字符串示例,列表movieTranses){this.example = 示例;this.movieTranses = 电影传输;}getter 和 setter 这里是 MovieTrans: 公共
..
在 javaodoc 为 流包,在Parallelism部分的末尾,我读到: 大多数流操作都接受描述用户指定行为的参数,这些参数通常是 lambda 表达式.为了保持正确的行为,这些行为参数必须是无干扰的,并且在大多数情况下必须是无状态的. 我很难理解这个“在大多数情况下".在哪些情况下可以接受/需要有状态的流操作? 我的意思是,我知道这是可能的,特别是在使用顺序流时,但同一个
..
我有一个 Model 和一个具有以下签名的 Property 类: 公共类属性{公共字符串名称;公共字符串 getName() {返回名称;}公共无效集合名称(字符串名称){this.name = 名称;}}公共类模型{私有列表属性 = 新的 ArrayList();公共列表获取属性(){返回属性;}} 我想要 List 中的 Map
..
我有以下物品: 公共类项目{字符串值;列出拥有者;人物创造者;}公共类人{字符串名称;内部标识;人事经理;} 现在我有一个包含 3 个 Item 对象的列表: i1 ->{value="1", 所有者=[p1, p2, p3], 创建者=p4}i2 ->{value="2", 所有者=[p2, p3], 创建者=p5}i3 ->{value="3", 所有者=[p5], 创建者=p1
..
我想过滤 Person 类的列表,最后使用 Streams 映射到 Java 中的某个匿名类.我可以在 C# 中非常轻松地做同样的事情. 人物类 类人{公共 int ID { 获取;放;}公共字符串名称 { 获取;放;}公共字符串地址 { 获取;放;}} 将结果映射为期望格式的代码. 列表lst = 新列表();lst.Add(new Person() { Name = "P
..
我想尝试使用 java 收集器编写以下代码. 给定一个人的 2 个属性(名字和姓氏),我想获得一张地图,其中包含唯一的名字或姓氏作为键,以及相应人员的列表. 这是一组数据: Person person1 = new Person();person1.setFirstName("约翰");person1.setLastName("doe");person1.setUserId("use
..
我需要将 Map> 转换为 Map.我一直在为这个问题苦苦挣扎. Map到Map的转换很明显: .collect(Collectors.groupingBy(Map.Entry::getKey,Collectors.mapping(Map.Entry::getValue, toList())) 但我找不到解决初始问题的方法.有一些易于准备的 java-8 方法吗? 解决方案 我认
..
这个我没办法解释,但是我在别人的代码中发现了这个现象: import java.io.IOException;导入 java.io.UncheckedIOException;导入 java.nio.file.Files;导入 java.util.stream.Stream;导入 org.junit.Test;公共类 TestDidWeBreakJavaAgain{@测试公共无效 testIoIn
..
我想使用 Java Stream 来运行一个 POJO 列表,例如下面的列表 List,并将其转换为 Map Map. 例如A类是: A 类 {公共字符串名称;公共字符串属性;} 我在下面编写了将值收集到地图中的代码Map: final Listas = new ArrayList();//已填充的列表 ...//如果名称没有重复则有效最终地图
..
这是一个例子:代码A: files.forEach(f -> {//去做}); 另外一个代码 B 可能会以这种方式使用: files.stream().forEach(f -> { }); 两者有什么区别,有stream()和没有stream()? 解决方案 实际上,它们大多是相同的,只是语义上略有不同. 代码 A 由 Iterable.forEach 定义,而代码 B 由
..
如果你有一个 Array 并且你想使用 Java8 的 forEach() 方法,哪种方法更好或更高效: Arrays.asList(new String[]{"hallo","hi"}).forEach(System.out::println); 或 Arrays.stream(new String[]{"hallo","hi"}).forEach(System.out::println)
..
我写了一些简单的代码,如下所示.这个类工作正常,没有任何错误. 公共类测试{公共静态无效主要(字符串[]参数){列表intList = IntStream.of(1,2,3,4,5,6,7,8,9,10).boxed().collect(Collectors.toList());int value = intList.stream().max(Integer::compareTo).ge
..