Java Builder模式構建MAP/LIST的實例講解
更新時間:2017年10月07日 11:04:09 作者:張飛_
下面小編就為大家?guī)硪黄狫ava Builder模式構建MAP/LIST的實例講解。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
我們在構建一個MAP時,要不停的調(diào)用put,有時候看著覺得很麻煩,剛好,看了下builder模式,覺得這思路不錯,于是乎,照著用builder模式寫了一個構建MAP的示例,
代碼如下:
import java.util.HashMap;
import java.util.Map;
public class MapBuilder<T> {
public Builder<T> b;
public MapBuilder(Builder<T> b){
this.b = b;
}
public Map<String,T> map(){
return b.map;
}
public T get(String key){
return b.map.get(key);
}
public static class Builder<T>{
public Map<String, T> map;
public Builder(){
map = new HashMap<String, T>();
}
public Builder<T> map(String key, T value){
map.put(key, value);
return this;
}
public MapBuilder<T> build(){
return new MapBuilder<T>(this);
}
}
public static void main(String[] args) {
MapBuilder<String> build = new MapBuilder.Builder<String>().map("a", "b").build();
System.out.println(build.get("a"));
}
}
public class ListBuilder<T> {
public Builder<T> b;
public ListBuilder(Builder<T> b){
this.b = b;
}
public List<T> list(){
return b.list;
}
public T get(int index){
return b.list.get(index);
}
public static class Builder<T>{
public List<T> list;
public Builder(){
list = new ArrayList<T>();
}
public Builder<T> add(T value){
list.add(value);
return this;
}
public ListBuilder<T> build(){
return new ListBuilder<T>(this);
}
}
public static void main(String[] args) {
ListBuilder<String> build = new ListBuilder.Builder<String>().add("a").add("b").build();
System.out.println(build.get(0));
}
}
以上這篇Java Builder模式構建MAP/LIST的實例講解就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
關于Unsupported major.minor version 49.0的錯誤解決辦法
這篇文章主要介紹了關于Unsupported major.minor version 49.0的錯誤解決辦法的相關資料,需要的朋友可以參考下2015-11-11
Java實現(xiàn)的連續(xù)奇數(shù)(n+2*x)是合數(shù)的算法題暴力算法
這篇文章主要介紹了Java實現(xiàn)的連續(xù)奇數(shù)(n+2*x)是合數(shù)的算法題暴力算法,本文包含運算結果和實現(xiàn)代碼,需要的朋友可以參考下2014-09-09
SpringCloud LoadBalancer自定義負載均衡器使用解析
LoadBalancerClient 是 SpringCloud 提供的一種負載均衡客戶端,Ribbon 負載均衡組件內(nèi)部也是集成了 LoadBalancerClient 來實現(xiàn)負載均衡,本文給大家深入解析 LoadBalancerClient 接口源碼,感興趣的朋友跟隨小編一起看看吧2023-04-04
詳解全局事務注解@GlobalTransactional的識別
這篇文章主要為大家介紹了詳解全局事務注解@GlobalTransactional的識別源碼解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-12-12

