问题列表 - 第33983页

如何将此foldLeft:Double表达式转换为使用Option [Double]?

任何人都可以帮助这个Scala新手吗?以前,我们在具有以下数量的实体列表中汇总了一些数量:

sum = entities.foldLeft(0.0)(_ + _.quantity)
Run Code Online (Sandbox Code Playgroud)

现在数量是一个Option[Double],总和也是.如何使用惯用的Scala转换它?

如果任何实体的数量是None那么总和也应该是None.否则总和应该是Some(total).

编辑:将此内容放入单元测试中,以便我可以尝试所有答案.请注意,如果任何数量为无,我确实需要结果为无,因为缺少数量意味着我们还没有完成,所以总数应该反映这一点.即使你没有得到正确的答案,如果你帮助引导我或其他人,或者帮助我学习新的东西,我会赞成.

编辑:@ sepp2k赢得了工作解决方案和解释.感谢大家的学习!

functional-programming scala

9
推荐指数
1
解决办法
3272
查看次数

迭代Python 3中的字典items(),values(),keys()

如果我理解正确,在Python 2中,iter(d.keys())就像是一样d.iterkeys().但现在,d.keys()是一个视图,它位于列表和迭代器之间.视图和迭代器之间有什么区别?

换句话说,在Python 3中,有什么区别

for k in d.keys()
    f(k)
Run Code Online (Sandbox Code Playgroud)

for k in iter(d.keys())
    f(k)
Run Code Online (Sandbox Code Playgroud)

另外,这些差异如何在一个简单的for循环中显示(如果有的话)?

python dictionary iterator python-3.x

41
推荐指数
1
解决办法
9万
查看次数

SQLite - 为每个字段创建和索引

我正在创建一个应用程序,它将从SQLite数据库中获取数据并将其显示在表中.

我希望在用户进行选择时(通过多个下拉框)实时更新表格.每次用户从下拉框中选择一个选项时,应用程序都必须创建一个新的SELECT查询,并添加,删除或更改新的WHERE子句.该表将显示查询结果,因为从下拉框中选择了一个项目.

我的问题是,为了使获取过程更快,我是否可以索引每个表中的每个字段?我不确定这是否可行.

我不需要担心INSERT,ALTER等性能问题,因为很少会添加新数据.

谢谢

sql sqlite

3
推荐指数
1
解决办法
1060
查看次数

在iphone safari浏览器中浏览或选择文件按钮禁用

我想知道为什么select filechoose file在iphone safari中查看网页时禁用按钮.

任何人都可以告诉我为什么会发生这种情况有没有办法启用它?

谢谢

iphone mobile-safari

2
推荐指数
1
解决办法
2794
查看次数

如何在每个页面中呈现django-cms插件?

我有一个django-cms的最新新闻插件.

我想在页脚中显示5条最新消息.页脚放在网站的每个页面上.

如何在每个页面上呈现此插件?

django django-cms

11
推荐指数
1
解决办法
3257
查看次数

addMouseListener或addActionListener或JButton?

在定义JButton上的简单点击行为时,这是正确的方法吗?而且,有什么区别?

JButton but = new JButton();
but.addActionListener(new ActionListener() {          
    public void actionPerformed(ActionEvent e) {
         System.out.println("You clicked the button, using an ActionListener");
    }
}); 
Run Code Online (Sandbox Code Playgroud)

要么

JButton but = new JButton();
but.addMouseListener(new java.awt.event.MouseAdapter() {
    public void mouseClicked(java.awt.event.MouseEvent evt) {
        System.out.println("You clicked the button, using a MouseListenr");
    }
});
Run Code Online (Sandbox Code Playgroud)

java swing button

6
推荐指数
1
解决办法
2万
查看次数

在spring过滤器中设置视图名称

我有一个ErrorFilter延伸弹簧GenericFilterBean.如果发生某些错误,我想显示一个用tile装饰的错误页面.

有没有办法从过滤器设置视图名称?

<filter>
    <filter-name>errorFilter</filter-name>
    <filter-class>com.abc.filter.ErrorFilter</filter-class>
    <init-param>
        <param-name>errorPage</param-name>
        <param-value>/jsp/errorpage.jsp</param-value>
    </init-param>
</filter>
Run Code Online (Sandbox Code Playgroud)

这是在配置web.xmldoFilter方法在errorfilter如下:

public void doFilter(ServletRequest req, ServletResponse resp,
        FilterChain chain) throws IOException, ServletException {

    HttpServletRequest httpReq = (HttpServletRequest) req;
    StringBuffer reqUrl = httpReq.getRequestURL();
    try {
        chain.doFilter(req, resp);
    } catch (Exception ex) {
        String requestRepresentation = createRequestRepresentation(req);
        errorService.handleException(reqUrl.toString(), ex, requestRepresentation);
        req.getRequestDispatcher(
                getFilterConfig().getInitParameter("errorPage")).forward(req, resp);
    } catch (Error er) {
        errorService.handleError(reqUrl.toString(), er);
        req.getRequestDispatcher(
                getFilterConfig().getInitParameter("errorPage")).forward(req, resp);
    }
}
Run Code Online (Sandbox Code Playgroud)

当前的错误不是用瓷砖装饰的,所以我想用普通的页眉和页脚来装饰它,从过滤器中调用该视图名称.

可能吗 ? …

java spring jsp tiles servlet-filters

9
推荐指数
1
解决办法
2355
查看次数

双重检查锁定模式:是否破碎?

为什么模式被认为是破碎的?它看起来很好吗?有任何想法吗?

public static Singleton getInst() {
    if (instace == null) createInst();
    return instace;
}

private static synchronized createInst() {
     if (instace == null) {
         instace = new Singleton(); 
     }
}
Run Code Online (Sandbox Code Playgroud)

java concurrency singleton double-checked-locking

9
推荐指数
4
解决办法
2731
查看次数

有没有jQuery相当于原型的延迟?

有没有jQuery相当于原型的延迟?

我正在寻找一些会延迟脚本执行的东西,直到页面中的所有脚本都完成执行.

谢谢!


第二部分:有没有办法看到队列中是否有其他的setTimeout并且延迟执行直到它们发生之后?我在评论中看到,有时候setTimeout为0或1并不重要,因为它是不可预测的,哪个会先触发.

再次感谢!

更新回答

我在下面接受的答案中找到了我使用的代码中的错误.切片调用需要在0而不是1上工作,因为在原型核心代码中,它接受额外的参数等待(0.01).最后的方法然后变成:

Function.prototype.deferFunc = function() {
   var __method = this, args = Array.prototype.slice.call(arguments, 0);
   return window.setTimeout(function() {
      return __method.apply(__method, args);
   }, 0.01);
}
Run Code Online (Sandbox Code Playgroud)

javascript jquery prototypejs

6
推荐指数
2
解决办法
1841
查看次数

file:/,file://,file:///有什么区别

今天我在Java应用程序中看到了几种不同的加载文件的方法.

  • 文件:/
  • 文件://
  • 文件:///

这三个URL开头有什么区别,使用它们的首选方式是什么?

非常感谢Stefan

url

16
推荐指数
2
解决办法
7657
查看次数