Guava 之 Lists

   guava是 Google 提供的java类库 https://github.com/google/guava,提供了大量实用的程序,来看下Lists,如何创建ArrayList

@GwtCompatible(serializable = true)
	public static  ArrayList newArrayList() {
		return new ArrayList();
	}

我们只需要直接使用

Lists.newArrayList()

即可创建一个ArrayList对象

其中注解@GwtCompatible有两个属性

@Retention(RetentionPolicy.CLASS)
@Target({ ElementType.TYPE, ElementType.METHOD })
@Documented
@GwtCompatible
public @interface GwtCompatible {//与GWT兼容 
	boolean serializable() default false;// 是否支持序列号,如果为true

	boolean emulated() default false;//模拟,Google对GWT的坚持
}

通过定义的对象来决定newArrayList返回的泛型

如:

 List s=Lists.newArrayList();
	 for(int i=0;i<3;i++)
	 {
		 User user=new User();
		 user.setAge(i).setName("user"+i);
		 s.add(user);
	 }
	 for (User user : s) {
		System.out.println(ToStringBuilder.reflectionToString(user));//ToStringBuilder为common-lang 包工具,通过反射实现获取obj的toString,可参照本人另外一篇博客,讲关于CompareToBuilder ,都是通过反射原理
	 }

即可获取泛型为User的List对象

结果为:

com.ecit.lyy.User@5e481248[name=user0,age=0,gender=,parentMoney=]
com.ecit.lyy.User@355da254[name=user1,age=1,gender=,parentMoney=]
com.ecit.lyy.User@4dc63996[name=user2,age=2,gender=,parentMoney=]

 

你可能感兴趣的:(guava)