有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java在java8流中下载文件的有效方法

我只有很少的字符串值,在这个字符串的基础上,我需要下载一些文件。在java8中,最有效的方法是什么

List<String> keyValues = Arrays.asList("key1", "key2", "key3","key4");
keyValues.stream().forEach(i -> (FileUtils.copyURLToFile(new URL(urlStr + i), new File(filePath + i))) );

forEach给出的错误是“不适用于参数((i)->;{})”

非常感谢您的帮助。谢谢


共 (2) 个答案

  1. # 2 楼答案

    取下lambda周围的支架:

    keyValues.forEach(i -> FileUtils.copyURLToFile(new URL(urlStr + i), new File(filePath + i)));
    

    我猜调用周围的括号会让编译器误以为你有一个函数而不是消费者

    还要注意的是,您不需要调用stream();您可以直接从集合调用.forEach()