我想l = ["","a","aa","aaa",...]
在haskell中创建这个流 .
有人能帮我吗?
我正在尝试使用HttpClient.GetStreamAsync()
方法下载文件。但是,这里有一个问题。GetStreamAsync()
方法返回只读流,因此我无法使用Length
属性声明IM试图读取字节的字节数组缓冲区。
using (var file = await _httpClient.GetStreamAsync(url).ConfigureAwait(false))
{
// it fails at file.Length below
byte[] blob = new byte[file.Length];
await file.ReadAsync(blob, 0, (int)file.Length).ConfigureAwait(false);
}
Run Code Online (Sandbox Code Playgroud) 假设Streams和Collections,Lambdas可以使用吗?我尝试使用 for 循环,但它没有解决我的问题。
// Set<Set<String>> to Set<String>
for(Set<String> s : set) {
result.addAll(s);
set.add(result);
}
Run Code Online (Sandbox Code Playgroud)
set 是一种Set<Set<String>>
类型, result 是Set<String>
.
并行运行时 a==b 为何为 false 但与组合器一起使用时却有效?
public class test {
public static int cal(final int i) {
return 1;
}
public static void main(String args[]) {
int a = IntStream.range(0, 3).reduce(0, (abc, cde) -> abc + cal(cde));
int b = IntStream.range(0, 3).parallel().reduce(0, (abc, cde) -> abc + cal(cde));
System.out.println(a == b); // false
int c = List.of(0, 1, 2).stream().parallel().reduce(0, (abc, cde) -> abc + cal(cde), Integer::sum);
System.out.println(a == c); // true
}
}
Run Code Online (Sandbox Code Playgroud) List<Animal> animals = this.service.findAll();
animals = animals.stream().sorted(Comparator.comparing(Animal::getName)).collect(Collectors.toList());
//working
Run Code Online (Sandbox Code Playgroud)
而
List<Animal> animals = this.service.findAll();
animals = animals.stream().sorted(Comparator.comparing(Animal.getName()).collect(Collectors.toList());
//Not working..
Run Code Online (Sandbox Code Playgroud)
任何人都可以告诉我为什么我不能使用比较器比较没有方法参考?