Guava 之 Lists
guava是 Google 提供的java类库 https://github.com/google/guava,提供了大量实用的程序,来看下Lists,如何创建ArrayList@GwtCompatible(serializable = true)public static <E> ArrayList<E> newArrayList()
·
guava是 Google 提供的java类库 https://github.com/google/guava,提供了大量实用的程序,来看下Lists,如何创建ArrayList
@GwtCompatible(serializable = true)
public static <E> ArrayList<E> 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<User> 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=<null>,parentMoney=<null>]
com.ecit.lyy.User@355da254[name=user1,age=1,gender=<null>,parentMoney=<null>]
com.ecit.lyy.User@4dc63996[name=user2,age=2,gender=<null>,parentMoney=<null>]
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
已为社区贡献1条内容
所有评论(0)