优化股票推荐数据排序
This commit is contained in:
@@ -12,10 +12,9 @@ import org.apache.commons.lang3.StringUtils;
|
|||||||
import org.springframework.util.ReflectionUtils;
|
import org.springframework.util.ReflectionUtils;
|
||||||
|
|
||||||
import java.lang.reflect.Field;
|
import java.lang.reflect.Field;
|
||||||
import java.util.Arrays;
|
import java.util.*;
|
||||||
import java.util.Iterator;
|
import java.util.stream.Collectors;
|
||||||
import java.util.List;
|
import java.util.stream.Stream;
|
||||||
import java.util.Map;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* RefinitivUtil
|
* RefinitivUtil
|
||||||
@@ -369,16 +368,32 @@ public class RefinitivUtil {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static List<String> decodeTopData(InstrumentData instrumentData) {
|
public static List<String> decodeTopData(InstrumentData instrumentData) {
|
||||||
List<String> list = Lists.newArrayList();
|
List<String> list = new ArrayList<>(100);
|
||||||
instrumentData.getDataMap().forEach((k, v) -> {
|
instrumentData.getDataMap().forEach((k, v) -> {
|
||||||
if (k.startsWith("BR_LINK")) {
|
if (k.startsWith("BR_LINK")) {
|
||||||
if (!v.contains("blank data")) {
|
if (!v.contains("blank data")) {
|
||||||
list.add(v);
|
list.add(k);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
return list;
|
List<String> stringList = list.stream().sorted(topComparator()).collect(Collectors.toList());
|
||||||
|
|
||||||
|
List<String> result = new ArrayList<>();
|
||||||
|
for (String key : stringList) {
|
||||||
|
result.add(instrumentData.getDataMap().get(key));
|
||||||
|
}
|
||||||
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private static Comparator<String> topComparator() {
|
||||||
|
String flag = "BR_LINK";
|
||||||
|
return (s1, s2) -> {
|
||||||
|
String seqStr1 = s1.substring(flag.indexOf(s1) + flag.length() + 1);
|
||||||
|
String seqStr2 = s2.substring(flag.indexOf(s2) + flag.length() + 1);
|
||||||
|
int seq1 = Integer.parseInt(seqStr1);
|
||||||
|
int seq2 = Integer.parseInt(seqStr2);
|
||||||
|
return seq1 - seq2;
|
||||||
|
};
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user