deason 5 yıl önce
ebeveyn
işleme
0ef97e0bc4

+ 2 - 2
examcloud-core-questions-base/src/main/java/cn/com/qmth/examcloud/core/questions/base/CommonUtils.java

@@ -528,7 +528,7 @@ public final class CommonUtils {
      * @return
      */
     public static double formatDouble(double number) {
-        BigDecimal formatNumber = new BigDecimal(number);
+        BigDecimal formatNumber = BigDecimal.valueOf(number);
         return formatNumber.setScale(2, RoundingMode.HALF_UP).doubleValue();
     }
 
@@ -560,7 +560,7 @@ public final class CommonUtils {
      * @return
      */
     public static double formatDoubleFloor(double number) {
-        BigDecimal formatNumber = new BigDecimal(number);
+        BigDecimal formatNumber = BigDecimal.valueOf(number);
         double floorNumber = formatNumber.setScale(0, RoundingMode.FLOOR).doubleValue();
         if (number >= floorNumber && number < floorNumber + 0.5) {
             return floorNumber;

+ 7 - 10
examcloud-core-questions-base/src/main/java/cn/com/qmth/examcloud/core/questions/base/StringSimilarityUtils.java

@@ -1,19 +1,12 @@
 package cn.com.qmth.examcloud.core.questions.base;
 
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
 import org.ansj.domain.Result;
 import org.ansj.domain.Term;
 import org.ansj.splitWord.analysis.ToAnalysis;
 import org.apache.commons.lang3.StringUtils;
 
+import java.util.*;
+
 /**
  * 计算相似度工具包:
  *
@@ -175,8 +168,10 @@ public class StringSimilarityUtils {
     public static double getSimilarityWithDiceOptByWords(String w1, String w2) {
         if (w1 == null || w2 == null || w1.length() == 0 || w2.length() == 0)
             return 0;
-        if (w1 == w2)
+
+        if (w1.equals(w2))
             return 1;
+
         if (w1.length() == 1 || w2.length() == 1) {
             if (w1.equals(w2)) {
                 return 1;
@@ -184,8 +179,10 @@ public class StringSimilarityUtils {
                 return 0;
             }
         }
+
         w1 = stringFilter(w1);
         w2 = stringFilter(w2);
+
         final int n = w1.length() - 1;
         final int[] sPairs = new int[n];
         for (int i = 0; i <= n; i++)

+ 17 - 24
examcloud-core-questions-base/src/main/java/cn/com/qmth/examcloud/core/questions/base/excel/ExcelReader.java

@@ -1,5 +1,9 @@
 package cn.com.qmth.examcloud.core.questions.base.excel;
 
+import cn.com.qmth.examcloud.commons.exception.StatusException;
+import org.apache.commons.io.IOUtils;
+import org.apache.poi.ss.usermodel.*;
+
 import java.io.InputStream;
 import java.lang.reflect.Field;
 import java.math.BigDecimal;
@@ -9,20 +13,6 @@ import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
 
-import org.apache.commons.io.IOUtils;
-import org.apache.poi.ss.usermodel.Cell;
-import org.apache.poi.ss.usermodel.DateUtil;
-import org.apache.poi.ss.usermodel.Row;
-import org.apache.poi.ss.usermodel.Sheet;
-import org.apache.poi.ss.usermodel.Workbook;
-import org.apache.poi.ss.usermodel.WorkbookFactory;
-
-import cn.com.qmth.examcloud.commons.exception.StatusException;
-import cn.com.qmth.examcloud.core.questions.base.excel.ColumnSetting;
-import cn.com.qmth.examcloud.core.questions.base.excel.ExcelError;
-import cn.com.qmth.examcloud.core.questions.base.excel.ExcelReaderHandle;
-import cn.com.qmth.examcloud.core.questions.base.excel.ExcelUtils;
-
 /**
  * @author ting.yin
  * @Description: 读取excel
@@ -30,7 +20,7 @@ import cn.com.qmth.examcloud.core.questions.base.excel.ExcelUtils;
  */
 public class ExcelReader extends ExcelUtils {
 
-    private static final DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+    private DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
 
     public ExcelReader(Class<?> dataClass) {
         super(dataClass, true);
@@ -110,7 +100,7 @@ public class ExcelReader extends ExcelUtils {
 
                 return (int) cell.getNumericCellValue();
 
-            } else if (field.getType().isPrimitive() && field.getType().getName().equals("int")) {
+            } else if (field.getType().isAssignableFrom(int.class)) {
 
                 return (int) cell.getNumericCellValue();
 
@@ -118,7 +108,7 @@ public class ExcelReader extends ExcelUtils {
 
                 return (long) cell.getNumericCellValue();
 
-            } else if (field.getType().isPrimitive() && field.getType().getName().equals("long")) {
+            } else if (field.getType().isAssignableFrom(long.class)) {
 
                 return (long) cell.getNumericCellValue();
 
@@ -126,7 +116,7 @@ public class ExcelReader extends ExcelUtils {
 
                 return (short) cell.getNumericCellValue();
 
-            } else if (field.getType().isPrimitive() && field.getType().getName().equals("short")) {
+            } else if (field.getType().isAssignableFrom(short.class)) {
 
                 return (short) cell.getNumericCellValue();
 
@@ -134,7 +124,7 @@ public class ExcelReader extends ExcelUtils {
 
                 return (float) cell.getNumericCellValue();
 
-            } else if (field.getType().isPrimitive() && field.getType().getName().equals("float")) {
+            } else if (field.getType().isAssignableFrom(float.class)) {
 
                 return (float) cell.getNumericCellValue();
 
@@ -142,7 +132,7 @@ public class ExcelReader extends ExcelUtils {
 
                 return (byte) cell.getNumericCellValue();
 
-            } else if (field.getType().isPrimitive() && field.getType().getName().equals("byte")) {
+            } else if (field.getType().isAssignableFrom(byte.class)) {
 
                 return (byte) cell.getNumericCellValue();
 
@@ -150,8 +140,7 @@ public class ExcelReader extends ExcelUtils {
 
                 return cell.getNumericCellValue();
 
-            } else if (field.getType().isPrimitive()
-                    && field.getType().getName().equals("double")) {
+            } else if (field.getType().isAssignableFrom(double.class)) {
 
                 return cell.getNumericCellValue();
 
@@ -161,12 +150,16 @@ public class ExcelReader extends ExcelUtils {
                 if (numStr.contains("E")) {
                     numStr = new BigDecimal(numStr.trim()).toPlainString();
                 }
-                if (numStr.endsWith(".0"))
+
+                if (numStr.endsWith(".0")) {
                     numStr = numStr.substring(0, numStr.indexOf(".0"));
+                }
+
                 return numStr;
             } else {
                 return cell.getNumericCellValue();
             }
         }
     }
-}
+
+}