草庐IT

GridFS-Stream

全部标签

java - 为什么 Stream#reduce 不隐式接受处理父类(super class)型元素的累积函数?

考虑到这些类和累积函数,它们代表了我原始上下文的简化(但重现了相同的问题):abstractstaticclassFoo{abstractintgetK();}staticclassBarextendsFoo{intk;Bar(intk){this.k=k;}intgetK(){returnthis.k;}}privatestaticFoocombined(Fooa1,Fooa2){returnnewBar(a1.getK()+a2.getK());}我试图通过依赖一个单独的函数combined来执行项目的累积(最初是数据索引报告),它直接处理Foo类型的元素。Foooutcome=S

java - DataOutputStream 给我一个 'java.io.IOException: unexpected end of stream' ?

我正在尝试使用HttpUrlConnection从Android应用程序向Web服务发出请求。但有时有效,有时无效。当我尝试发送这个值时:JSON值{"Calle":"CallePérez105","DetalleDireccion":"","HoraPartida":"May18,20149:17:10AM","Numero":0,"PuntoPartidaLat":18.477295994621315,"PuntoPartidaLon":-69.93638522922993,"Sector":"MainSector"}我在DataOutputStream关​​闭函数中遇到“流的意外

java - 为什么 Stream::flatMap 的这种用法是错误的?

我希望能够像这样使用Stream::flatMappublicstaticListduplicate(Strings){Listl=newArrayList();l.add(s);l.add(s);returnl;}listOfStrings.stream().flatMap(str->duplicate(str)).collect(Collectors.toList());但是我得到以下编译错误Test.java:25:error:incompatibletypes:cannotinfertype-variable(s)RlistOfStrings.stream().flatMap(

java - Parallel Stream 与 Stream 的行为不同

我无法理解为什么并行流和流对完全相同的语句给出不同的结果。Listlist=Arrays.asList("1","2","3");StringresultParallel=list.parallelStream().collect(StringBuilder::new,(response,element)->response.append("").append(element),(response1,response2)->response1.append(",").append(response2.toString())).toString();System.out.println(

java - 为什么没有提供 Stream<E> 的接口(interface)?

为了防止实现细节泄露,而不是返回,例如Collection,一个人可能会实现Iterable,然后需要实现Iterator来自Iterable界面。因此,无论内部数据结构如何管理,对元素的访问都是通过Iterator进行的。.对于Java8,人们可能希望添加Streamstream()至MyCoolObject.(另请参阅:Java8Lambdas一书中关于支持stream的建议)。虽然添加方法并不困难(而且我确实阅读了关于WhyIterableDoesn'tProvideStream的问题),但Java没有为Streamable添加接口(interface)似乎很奇怪。镜像Itera

java - java.util.stream.Streamable 发生了什么?

早jdk8-eajavadocslikethis表示有一个java.util.stream.Streamable接口(interface),这似乎与Stream具有相同的关系作为Iterable有一个Iterator.现在我们似乎陷入了Supplier的困境,这当然不一样。Streamable发生了什么? 最佳答案 它已经被删除了一段时间。Therationale删除由BrianGoetz给出:CurrentlytheonlyimplementorisCollection,andalloftheotherstream-bearing

Java NIO : transferFrom until end of stream

我正在研究NIO库。我正在尝试监听端口8888上的连接,一旦连接被接受,就将该channel中的所有内容转储到somefile。我知道如何使用ByteBuffers来做到这一点,但我想让它与据称super高效的FileChannel.transferFrom一起工作.这是我得到的:ServerSocketChannelssChannel=ServerSocketChannel.open();ssChannel.socket().bind(newInetSocketAddress(8888));SocketChannelsChannel=ssChannel.accept();FileCh

java - 是否有可能在 Stream 中获取下一个元素?

我正在尝试将for循环转换为功能代码。我需要向前看一个值,也需要向后看一个值。是否可以使用流?下面的代码是将罗马文本转换为数值。不确定具有两个/三个参数的reduce方法是否可以提供帮助。intpreviousCharValue=0;inttotal=0;for(inti=0;i0){total+=(romanNum.getNumericValue()-previousCharValue);previousCharValue=0;}else{if(i 最佳答案 不,使用流是不可能的,至少不容易。流API从处理元素的顺序中抽象出来:流

java - 如何解决 JXL 错误 : jxl. read.biff.BiffException: Unable to recognize OLE stream

我正在尝试从我的.csv文件中获取单元格数据,但出现错误:jxl.read.biff.BiffException:无法识别OLE流我不知道怎么解决,请给我一些解决方案此代码适用于jxlapi并且该api是否支持.csv?引用代码:publicvoidread()throwsIOException,BiffException{FileinputWorkbook=newFile(inputFile);try{w=Workbook.getWorkbook(inputWorkbook.getAbsoluteFile());//GetthefirstsheetSheetsheet=w.getSh

java - 什么更有效率 : sorted stream or sorting a list?

假设我们在一个集合中有一些项目,我们想使用某个比较器对它们进行排序,期望结果在一个列表中:Collectionitems=...;ComparatoritemComparator=...;其中一种方法是对列表中的项目进行排序,例如:ListsortedItems=newArrayList(items);Collections.sort(sortedItems,itemComparator);另一种方法是使用排序流:ListsortedItems=items.stream().sorted(itemComparator).collect(Collectors.toList());我想知道