小编Rad*_*arz的帖子

如何检查jinja2模板中是否存在给定变量?

比方说,我创建了一个模板对象(fe using environment.from_string(template_path)).是否可以检查创建的模板中是否存在给定的变量名称?

我想知道,如果

template.render(x="text for x")
Run Code Online (Sandbox Code Playgroud)

会产生什么影响(如果某些东西实际上会被"text for x"替换掉).如何检查变量x是否存在?

python jinja2

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

是否有Java 8等效的Python枚举内置?

3年前,在这里提出了一个类似的问题:是否存在类似于 Python的'枚举'函数的Java?

我非常感谢这个listIterator()解决方案.不过,我现在对新流和lambdas(在JDK 8中引入)做了很多工作并且想知道:有没有一种优雅的方法来获取当前正在处理的元素的索引?我的展示如下,但我觉得它并不特别吸引人.

IntStream.range(0, myList.size())
         .mapToObj(i -> doSthWith(myList.get(i), i));
Run Code Online (Sandbox Code Playgroud)

python java java-8

9
推荐指数
2
解决办法
2597
查看次数

是否可以在 FXML 中使用算术表达式?

我希望有一个功能可以让我在 FXML 中处理数字。例如,试图定义一个元素的高度等于一个常数,而第二个元素的高度等于这个常数乘以 2(即constant * 2)。是否可以在 FXML 中完成它,或者我是否需要在控制器内部进行这部分视图构建(我想避免)?

java javafx fxml

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

如何检查进程是否被supervisor重启?

更准确地说:

我有一个负责动态儿童数量的主管。我希望它在第一次添加和启动给定子项时使用不同的 init 函数,而不是稍后发生的所有重新启动。或者,如果进程可以发现它已重新启动,我可以使用相同的函数。

erlang

5
推荐指数
1
解决办法
1791
查看次数

如何在Java 8中生成给定长度的列表?

我想通过调用方法x次来创建一个列表(或一般的集合).在Python中它会是这样的.

self.generated = [self.generate() for _ in range(length)]
Run Code Online (Sandbox Code Playgroud)

我尝试在JDK 8中编写类似的代码.

this.generated = IntStream.range(0, length)
                          .mapToObj(n -> this.generate())
                          .collect(Collectors.toList());
Run Code Online (Sandbox Code Playgroud)

它有效,但不知何故它感觉还不错.有没有更合适的方法呢?

python java java-8

5
推荐指数
1
解决办法
194
查看次数

是否可以在Java 8流API中定义可选流或类似异常的行为?

让我们拥有一系列对象,这些对象来自一系列操作(例如映射,过滤,平面映射等).现在我想对它们执行某个操作,但仅当给定的谓词为真时.否则我想立即返回别的东西.

一个简单的例子.我有一堆不同的食物.如果所有这些都可以食用,我想对它们进行烹饪操作并返回熟食清单.但如果其中任何一个结果不可食用,我想立即返回一个空列表.

我想到的解决方案很少,但我对它们中的任何一个都不满意.

我可以先在流上执行allMatchisEdible谓词的操作,但它会导致终止它,我需要再次重复初步操作.

在检查可编辑性之前,我可以保留作为初步操作结果的集合,但因此我需要为所有元素执行它们.这是不是最理想的,因为它可能会变成,它们中的第一个是不可食用的,并且allMatch会更早地返回.

或者我可以设计一个hacky reduce例程,但是当谓词失败时它也无法停止处理元素.

我希望的是类似下面的代码.目前的API有可能吗?

source.stream()
    // some operations
    .ifAny(food -> !food.isEdible(), new LinkedList<Food>())
    // other operations if previous step not failed
    .peek(food -> food.prepare())
    .collect(Collectors.toList());
Run Code Online (Sandbox Code Playgroud)

java java-8 java-stream

5
推荐指数
1
解决办法
141
查看次数

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

标签 统计

java ×5

java-8 ×3

python ×3

erlang ×1

fxml ×1

guava ×1

java-stream ×1

javafx ×1

jinja2 ×1