我有一个应返回上一行内容的UDF。我用以下代码实现了它。不幸的是,它总是返回参数second的当前行的值。有谁知道我做错了什么?
@UDFType(stateful = true)
public class Strip extends UDF {
private Text result = new Text();
private static ArrayList<Text> lst;
int count=0;
public Strip(){
result.set("");
}
public Text evaluate(Text first, Text second) {
if (str == null | stripChars == null) {
return null;
}
if (lst == null)
{
lst = new ArrayList<Text>();
lst.add(second);
return first;
}
result=lst.get(lst.size()-1);
lst.add(second);
return result;
}
提前致谢。