假设我们有一段无聊的代码,我们都必须使用:
ArrayList<Long> ids = new ArrayList<Long>();
for (MyObj obj : myList){
ids.add(obj.getId());
}
切换到Java 8后,我的IDE告诉我,我可以将此代码替换为对方付费呼叫,它会自动生成:
ArrayList<Long> ids = myList.stream().map(MyObj::getId).collect(Collectors.toList());
然而,这给了我一个错误:
Steam中的collect(java.util.stream.Collector)不能应用于:(java.util.stream.Collector,capture,java.util.List)
我尝试转换参数,但它给了我未定义的A
和R
,IDE没有给出任何建议。
我很好奇,在这种情况下,您如何使用对方付费电话
,而我找不到任何可以正确指导我的信息。有人能帮忙吗?
我使用了很多收集器块,在那里我创建了一个空数组,并使用循环填充它,所以我决定我需要一个自己的实用程序类,不要再写相同的行广告,这里是:
public class Collections {
public static <T, O> List<T> collect(Set<O> items, Function<? super O, ? extends T> mapper) {
return items.stream().map(mapper).collect(Collectors.toCollection(ArrayList::new));
}
}
并像这样使用它
List<Product> prods = Collections.collect(basket.getOrderItems(), OrderItem::getProduct);
还是像这样
List<Long> prods = Collections.collect(basket.getOrderItems(), (item)->item.getProduct().getId());
虽然看起来更容易阅读,但在这种情况下,流似乎要慢一点,看这里
问题是Collectors.toList返回一个List
List<Long> ids = remove.stream()
.map(MyObj::getId)
.collect(Collectors.toList());
编程到界面
。
从留档:
返回一个收集器
,该收集器将输入元素累加到一个新的列表
。对于返回的列表
的类型、可变性、可序列化性或线程安全性没有任何保证;如果需要对返回的列表进行更多控制,请使用收集(供应商)
。
强调我的-你甚至不能假设返回的List
是可变的,更不用说它是一个特定的类了。如果你想要一个ArrayList
:
ArrayList<Long> ids = remove.stream()
.map(MyObj::getId)
.collect(Collectors.toCollection(ArrayList::new));
还请注意,通常使用Java 8流
API导入静态,以便添加:
import static java.util.stream.Collectors.toCollection;
(我讨厌starredimport static
,它只会污染名称空间并增加混乱。但是选择性的import static
,尤其是Java 8实用程序类,可以大大减少冗余代码)
会导致:
ArrayList<Long> ids = remove.stream()
.map(MyObj::getId)
.collect(toCollection(ArrayList::new));
标准版 个人用户可以在账户页面充值并购买 精益版 我们为企业用户推出的全面精益实践版本,提供标准版 DaoCloud Services,Cloud Edition DCE, DaoVoice服务,覆盖了精益研发,精益运维,精益运营。如需要了解详情,请跟我们联系。 付费方式 网上支付:DaoCloud 平台支持通过微信扫码和支付宝扫码的方式付款,您在用户中心点击支付后,可以在弹出的窗口中选择支付方式
我对如何在AOP中使用Fegn客户端很感兴趣。例如: 应用程序编程接口: 配置: 但我不知道如何“拦截”api方法调用。我哪里出错了? 更新: 我的Spring课注解:
很多WordPress的付费插件是基于GPL协议的,于是就有人把这些插件弄到自己的网站提供免费下载,搜索“GPL Download”你能找到很多这种网站。它们给我们提供了免费试用WordPress付费插件的机会。 GPLDL gpldl.com是一个风格简洁,导航简单且信息清晰的网站,它有很多付费的插件和主题,以及WooCommerce的付费插件。 列举一些这个站点能免费下载到的WordPress
但是上行和下行都不起作用 当我使用上行链路或下行链路时,我的应用程序行为不端,而当我使用其他来源时,我的应用程序工作正常
问题内容: 我需要从被叫方获取呼叫者信息(什么文件/什么行)。我了解到可以为此目的使用inpect模块,但不能完全使用它。 如何使用inspect获取那些信息?还是有其他方法来获取信息? 问题答案: 呼叫者的帧比当前帧高一帧。您可以用来查找呼叫者的框架。然后使用inspect.getframeinfo获取调用者的文件名和行号。
我正在尝试使用它的RESTAPI创建Paypal支付(https://developer.paypal.com/docs/integration/direct/payments/paypal-payments/),但我找不到如何将付款发送到第三方Paypal业务帐户。可以使用RESTAPI吗?我知道这可以通过使用Paypal SDK for Asp来完成。net,但不幸的是,没有可用于asp的sd