我正在编写自定义UDF并期望ARRAY<MAP<STRING, STRING>>
参数。在我的evaluate
方法中,我接着
@Override
public Object evaluate(DeferredObject[] args) throws HiveException {
List<?> elements = listObjectInspector.getList(args[0].get());
问题是,elements
现在是有效Java地图的列表,还是我还需要为mapObjectInspector.getMap()
中的每个元素调用elements
?
答案 0 :(得分:1)
答案是肯定的。首先使用ListObjectInspector
然后为每个元素调用MapObjectInspector
。