我有以下对象和地图:
MyObject
String name;
Long priority;
foo bar;
Map<String, List<MyObject>> anotherHashMap;
Run Code Online (Sandbox Code Playgroud)
我想在另一个地图中转换地图.结果映射的键是输入映射的键.结果映射的值是My对象的Property"name",按优先级排序.
该排序和提取的名字是没有问题的,但我不能把它放到结果地图.我是用旧的Java 7方式做的,但是可以使用流式API是很好的.
Map<String, List<String>> result = new HashMap<>();
for (String identifier : anotherHashMap.keySet()) {
List<String> generatedList = anotherHashMap.get(identifier).stream()...;
teaserPerPage.put(identifier, generatedList);
}
Run Code Online (Sandbox Code Playgroud)
有人有想法吗?我试过这个,但卡住了:
anotherHashMap.entrySet().stream().collect(Collectors.asMap(..., ...));
Run Code Online (Sandbox Code Playgroud) 在我们的Angularjs应用程序中,我们动态设置所需的字段(ng-required).因此,*每次需要时向标签添加都非常复杂.
现在我们有了另一个想法.可以根据需要标记输入字段本身.在这篇文章中,我们找到了解决方案的一部分.
有一个必需字段的CSS选择器,所以我们可以像这样为它设置一个背景图像:
input:required:valid {
background-image: url(valid.png);
background-position: right center;
background-repeat: no-repeat;
}
input:required:invalid {
background-image: url(invalid.png);
background-position: right center;
background-repeat: no-repeat;
-moz-box-shadow: none;
}
Run Code Online (Sandbox Code Playgroud)
<p>Name:</p>
<input type="text" name="name" required />
Run Code Online (Sandbox Code Playgroud)
但是使用这种方式,我们需要一个背景图像*,这似乎非常hacky.特别是,如果表格有不同的尺寸,那么图像有不同的分辨率.
比我们找到这个(Section Labeled)示例,似乎可以将Text添加到输入字段.
所以问题是,如何将所有这些放在一起,以便我可以将一个glyphicon从twitter-bootstrap放到输入字段的右侧,如果需要,而不编辑所有表单?
我有一些目标(可以说3个)。因此,在生成文件运行之后,我想拥有3个可执行文件。
这是我现在所做的:
CC = gcc
CFLAGS = -Wall -pedantic -ansi
ECHO = server_echo
ECHO_O = echo.o
FOO = server_foo
FOO_O = foo.o
ALL = $(ECHO) $(FOO)
ALL_O = ECHO_O FOO_O
all: $(ALL)
$(ECHO): $(ECHO_O)
$(CC) $(CFLAGS) -o $(ECHO) $(ECHO_O)
$(FOO): $(FOO_O)
$(CC) $(CFLAGS) -o $(FOO) $(FOO_O)
.PHONY: clean
clean:
- rm -f $(ALL)
- rm -f *.o
- rm -f core
%.o: %.c
$(CC) $(CFLAGS) -c $<
.PHONY: mci
mci: clean $(ALL)
Run Code Online (Sandbox Code Playgroud)
对于目标$(ECHO)和$(FOO),我有重复的规则。有什么办法可以消除重复吗?就像是:
for target, target_o in $(ALL), $(ALL_O)
target: …Run Code Online (Sandbox Code Playgroud)