Groovy   发布时间:2022-04-12  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Groovy Tip 6 集合类的简化操作大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
                      Groovy Tip 6 集合类的简化操作
 
Groovy语言对Java语言的简化在集合类上是表现最为突出的,那个著名的each方法就不需要我多说了,因为“地球人都知道”。
一.赋初值的简化
对于List对象,在Java语言中是这样赋初值的
       List list = new ArrayList();
      
       list.add( "a" );
       list.add( "b" );
    list.add( "c" );
 
十分的繁琐,在Groovy语言里只需要这样赋初值:
List list = [ 'a' , 'b' , 'c' ]
 
这简直是太简单了。
 
同样,对于Map对象,在Java语言中是这样赋初值的
       Map map = new HashMap();
       map.put( "name" , "tom" );
       map.put( "age" , "4" );
    map.put( "addr" , "shenzhen" );
 
同样是相当的繁琐,但是在 Groovy 语言里:
@H_465_21@map map = [ 'name' : 'tom' , 'age' : '4' , 'addr' : 'shenzhen' ]
 
同样是很简单的。
 
二.值的简化
在Java语言中,对List对象取值如下:
list.get(0)
 
但是在 Groovy 语言中, List 对象可以像数组一样取值:
    List list = [ 'a' , 'c' ]
   
println list[ 0 ]
 
Java 语言中,对 @H_352_81@map 对象的取值如下:
       Map map = new HashMap();
       map.put( "name" , "4" );
       map.put( "addr" , "shenzhen" );
      
    System. out .println(map.get( "name" ));
 
Groovy 语言中, @H_352_81@map 对象可以这样取值:
    Map map = [ 'name' : 'tom' , 'addr' : 'shenzhen' ]
   
println map[ 'name' ]
 
还可以这样取值:
    Map map = [ 'name' : 'tom' , 'addr' : 'shenzhen' ]
   
println map.name
 
 
三.给集合类增加元素
在Java语言中,给List对象增加一个元素如下:
       List list = new ArrayList();
       list.add( "1" );
       String[] strs = (String[])list.toArray( new String[0]);
      
    list.add( "a" );
 
是的,使用 add 方法
而在 Groovy 语言中,你只需使用如下方法
    List list = [ 'a' , 'c' ]
   
    list<< 'd'
   
println list
 
是的,我们使用“ << ”符号给 List 对象增加元素。
 
Java 语言中,给 @H_352_81@map 对象增加一个元素如下:
       Map map = new HashMap();
       map.put( "name" , "shenzhen" );
      
       System. out .println(map.get( "name" ));
      
    map.put( "abc" , "abc" );
 
不错,还是使用 put 方法
而在 Groovy 语言中,我们只需这样做:
    Map map = [ 'name' : 'tom' , 'addr' : 'shenzhen' ]
   
    map[ 'abc' ] = 'abc'
println map

大佬总结

以上是大佬教程为你收集整理的Groovy Tip 6 集合类的简化操作全部内容,希望文章能够帮你解决Groovy Tip 6 集合类的简化操作所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。