Groovy
文章平均质量分 57
Groovy
陆氪和他的那些代码
学习可以偷懒,面试好好发挥就行
展开
-
Groovy - Cannot invoke method put() on null object
Groovy - Cannot invoke method put() on null object原创 2024-05-22 11:19:56 · 271 阅读 · 0 评论 -
Groovy - Groovy ambiguous method overload
修改前if (CollectionUtils.isEmpty(serviceGraph.getCallMap())) { serviceGraph.setCallMap(new HashMap<String, Integer>())}Caused by: javax.script.ScriptException: groovy.lang.GroovyRuntimeException: Ambiguous method overloading for method java.原创 2021-04-07 19:35:34 · 2509 阅读 · 0 评论 -
Groovy - == 一定等价于 Java 的 equals() 吗?
在Java中,==和equals()是一个混乱之源,而Groovy加剧了这种混乱。Groovy将==操作符映射到了Java中的equals()方法。假如我们想比较引用是否相等(也就是原始的==的语义),该怎么办呢?必须使用Groovy中的is()。下面通过一个例子来理解其区别。GroovyForJavaEyes/Equals.groovystr1 = 'hello'str2 = str1str3 = new String('hello')str4 = 'Hello'println ".转载 2020-07-03 12:42:38 · 1073 阅读 · 0 评论 -
Groovy - GString & String
GString和String是两个不同的类,因此使用GString对象作为Map对象的键或涉及GString对象的比较,可以在与String对象组合时产生意外的结果,因为GString和String不会具有相同的hashCode,也不会是否相等。在两个类型之间没有用于比较或映射键的自动强制,所以有时需要显式地在GString对象上调用toString()。如果代码是期望GString,意外转换为String可能会导致问题,就像groovy.sql类中的方法一样。Ps:当然也可以用过显示 String原创 2020-05-27 17:51:49 · 1066 阅读 · 0 评论 -
Groovy - 操作符之 “<<”
“<<”操作符在Java语言里被我们熟知的是位运算中的左移运算符。在Groovy语言里,它依然是左移运算符,这我们都很熟悉,在这里就不再多说。而我们要说的却是除此之外,在Groovy语言里为“<<”运算符新增的功能。一、对List对象和Set对象的操作对于List对象,在前面的文字里我们提到过:def list = ['a','b','c']list.each{ println it}println'----------------------....转载 2020-05-17 21:46:01 · 1391 阅读 · 0 评论 -
Groovy - 探索之 invokeMethod 方法
我们知道,在Java语言中,所有的Java类都继承了Object对象。通过Object对象,所有的Java类都隐藏的实现了“equals”等方法。同样,在Groovy语言中,所有的Groovy类都隐藏的实现了GroovyObject接口,这样,我们的Groovy类就隐藏的实现了很多的方法,如“isCase”等。这篇文字要谈谈的就是GroovyObject接口的“invokeMethod”方法,这个方法对于我们Groovy语言的动态性编程很有帮助,可以帮助我们实现一些很有时代性的功能,比如DSL。本文就.转载 2020-05-15 22:06:47 · 2109 阅读 · 0 评论 -
Groovy - 探索之 MOP(invokeMethod 和 methodMissing 方法)
终于要谈到Groovy语言的MOP特性了,我在前面的章节中零星的谈到了它,却始终没有系统的来谈到它。这是因为Groovy语言的MOP特性实在是太灵活了,比如本章节要谈到的“invokeMethod”和“methodMissing”方法,它们的功能有很大的相似之处,而区别却相当的微妙。但是,不管怎么样,Groovy语言的MOP编程都是我们必须掌握的。而这个系列我没有计划多少个部分谈完,跟《Groovy探索之闭包》系列一样,探索一部分说一部分。本节要谈到的“invokeMethod”方法,我们在《Groo.转载 2020-05-15 21:58:29 · 1046 阅读 · 0 评论