欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Java Builder模式构建MAP/LIST的实例讲解

程序员文章站 2024-02-26 13:32:52
我们在构建一个map时,要不停的调用put,有时候看着觉得很麻烦,刚好,看了下builder模式,觉得这思路不错,于是乎,照着用builder模式写了一个构建map的示例,...

我们在构建一个map时,要不停的调用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的实例讲解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。