例如,我有一个很长的列表[1, 2, 3, ..., 10],一个很短的列表,[1, 3, 6]然后我可以告诉我,短的列表是另一个的子序列.另一方面,列表[1 6 3]不是因为它违反了订单约束.
下面是我这个问题的java7样式代码:
List<Integer> sequence = Arrays.asList(1, 3, 6);
List<Integer> global = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);
Iterator<Integer> iterGlobal = global.iterator();
boolean allMatch = true;
for(Integer itemSequence: sequence) {
boolean match = false;
while(iterGlobal.hasNext()) {
if(itemSequence.equals(iterGlobal.next())) {
match = true;
break;
}
}
if(!match) {
allMatch = false;
break;
}
}
System.out.println(allMatch); //=> true
Run Code Online (Sandbox Code Playgroud)
而我的愿望是找到一个java8流样式来实现相同的结果.
我想将像[k1,v1,k2,v2]这样的列表转换为像{k1:v1,k2:v2}这样的地图.原始代码是:
List<Object> params = Arrays.asList("k1", "v1", "k2", "v2");
Map<String, Object> map = new HashMap<>();
for(int i = 0; i < params.size(); i+=2) {
String key = (String)params.get(i);
Object value = params.get(i + 1);
map.put(key, value);
}
System.out.println(map); // => {k1=v1, k2=v2}
Run Code Online (Sandbox Code Playgroud)
那我想把它转换成java8流式?怎么样?
我想将factory_girl集成到rails开发环境中以快速创建记录。然而,每次我打开rails控制台并执行一些操作时,序列状态总是从零开始,这导致违反唯一性的错误。例如:
FactoryGirl.define do
factory :user do
name 'Jim'
email
end
sequence :email do |n| # every time n begins at 0
"#{n}@exmaple.com"
end
end
Run Code Online (Sandbox Code Playgroud)
您有一些简单的解决方案来解决这个问题吗?谢谢你!
例如,给出如下地图:
{
"k1": {
"k2": {
"k3": {
"k4": "v"
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
和一个字段列表["k1","k2","k3"],我需要检索该部分{"k4": "v"}.
下面是我的java7风格的代码:
// Ignore the map building code.
Map map1 = new HashMap();
Map map2 = new HashMap();
Map map3 = new HashMap();
Map map4 = new HashMap();
map4.put("k4", "v");
map3.put("k3", map4);
map2.put("k2", map3);
map1.put("k1", map2);
Map map = map1;
System.out.println(map); //=> {k1={k2={k3={k4=v}}}}
// Code to be transformed to java8 style
List<String> fields = Arrays.asList("k1", "k2", "k3");
for(String field: fields) { …Run Code Online (Sandbox Code Playgroud) 我想在我的openSuse Leap 42.1系统上安装gem nokogiri.由于以下命令,我安装了libxml2-devel和libxslt-devel:
show libxml2-devel和libxslt-devel安装标志'i'表示已安装的软件包.
当我命令"sudo gem install nokogiri"时,它输出以下消息:
'sudo gem install nokogiri'的输出
我想细节是在'mkmf.log',但我不知道它在哪里.
非常感谢.