pom依赖:
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
</dependency>
CalMap类:
package study.com.biconsumer;
import java.util.*;
import java.util.function.BiConsumer;
public class CalMap<T,U> {
private Map<String,Object> map;
private List<String> nameList;
private final BiConsumer<T, U> biConsumer;
public CalMap(Map<String,Object> map, BiConsumer<T, U> biConsumer) {
this.map = map;
this.biConsumer = biConsumer;
}
public void transForm(Map<T,U> map){
map.forEach((key, value) -> {
biConsumer.accept(key,value);
});
}
}
TestBiConsumer测试类:
package study.com.biconsumer;
import org.junit.Test;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class TestBiConsumer {
private List<String> nameList = new ArrayList<>();
/**
* 将 map的 key 和 value 合并,存入List中。
* @param key
* @param value
*/
public void combine(Object key, Object value) {
if(key instanceof String && value instanceof String){
String result = key+"_"+value;
System.out.println("======= result: "+result+"=======");
nameList.add(result);
}
}
@Test
public void testBiConsumer(){
Map<String,Object> map = new HashMap<>();
map.put("江西省赣州市","张三");
map.put("江西省鹰潭市","李四");
CalMap calMap = new CalMap(map,this::combine);
calMap.transForm(map);
System.out.println("======集合大小:"+nameList.size());
}
}
运行结果: