|
@@ -51,13 +51,19 @@ public class MBTIResultDetailServiceImpl implements MBTIResultDetailService {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 随机获取到一定数量的字符串
|
|
|
+ * @param str 待处理字符串
|
|
|
+ * @param num 数量
|
|
|
+ * @return
|
|
|
+ */
|
|
|
private String getRandomResultByNum(String str,int num) {
|
|
|
List<String> list = Arrays.asList(str.split("、"));
|
|
|
- if (list.size()>1){
|
|
|
+ if (list.size()>num){
|
|
|
String result = null;
|
|
|
- for (int i =0;i<num;i++){
|
|
|
- int random = RandomUtil.randomInt(0,list.size()-1);
|
|
|
- String text = list.get(random);
|
|
|
+ int random = RandomUtil.randomInt(0,list.size()-num);
|
|
|
+ for (int i =random;i<random+num;i++){
|
|
|
+ String text = list.get(i);
|
|
|
if (result == null){
|
|
|
result = text;
|
|
|
}else {
|
|
@@ -70,6 +76,18 @@ public class MBTIResultDetailServiceImpl implements MBTIResultDetailService {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+
|
|
|
+ private int getOnlyRandom(List numList,int size){
|
|
|
+ int random = RandomUtil.randomInt(0,size-1);
|
|
|
+ if (numList.contains(random)){
|
|
|
+ return getOnlyRandom(numList,size);
|
|
|
+ }else {
|
|
|
+ numList.add(random);
|
|
|
+ return random;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
@Override
|
|
|
public void save(MBTIResultDetail detail) {
|
|
|
detailRepository.save(detail);
|