]> source.dussan.org Git - poi.git/commitdiff
sonar issues
authorPJ Fanning <fanningpj@apache.org>
Wed, 29 Dec 2021 17:18:44 +0000 (17:18 +0000)
committerPJ Fanning <fanningpj@apache.org>
Wed, 29 Dec 2021 17:18:44 +0000 (17:18 +0000)
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1896511 13f79535-47bb-0310-9956-ffa450edef68

poi/src/main/java/org/apache/poi/ss/formula/OperatorEnum.java
poi/src/main/java/org/apache/poi/ss/formula/functions/LookupUtils.java

index 2fdc7cb0960de203f63dc2771ea95ae64f4bd9cf..3eeea4eebe77de37f1a8ad76981cbe9e46be3ee2 100644 (file)
@@ -32,7 +32,7 @@ enum OperatorEnum {
     NO_COMPARISON(OperatorEnum::noComp, false),
     BETWEEN(OperatorEnum::between, false),
     NOT_BETWEEN(OperatorEnum::notBetween, true),
-    EQUAL(OperatorEnum::equal, false),
+    EQUAL(OperatorEnum::equalCheck, false),
     NOT_EQUAL(OperatorEnum::notEqual, true),
     GREATER_THAN(OperatorEnum::greaterThan, false),
     LESS_THAN(OperatorEnum::lessThan, false),
@@ -111,7 +111,7 @@ enum OperatorEnum {
         return cellValue.compareTo(v1) < 0 || cellValue.compareTo(v2) > 0;
     }
 
-    private static <C extends Comparable<C>> boolean equal(C cellValue, C v1, C v2) {
+    private static <C extends Comparable<C>> boolean equalCheck(C cellValue, C v1, C v2) {
         if (v1 == null) {
             if (cellValue instanceof Number) {
                 // use zero for null
@@ -121,8 +121,7 @@ enum OperatorEnum {
             } else if (cellValue instanceof Boolean) return false;
             return false; // just in case - not a typical possibility
         }
-        // need to avoid instanceof, to work around a 1.6 compiler bug
-        if (cellValue.getClass() == String.class) {
+        if (cellValue instanceof String) {
             return cellValue.toString().compareToIgnoreCase(v1.toString()) == 0;
         }
         return cellValue.compareTo(v1) == 0;
index b8d6f51c83cc7a3a53cf4c39e7fd864e5df2bd3c..fa21d33531c96dd4f916a146040d401ca14141d0 100644 (file)
@@ -114,7 +114,7 @@ public final class LookupUtils {
 
         default Iterator<Integer> indexIterator() {
             return new Iterator<Integer>() {
-                int pos = 0;
+                private int pos = 0;
 
                 @Override
                 public boolean hasNext() {
@@ -123,7 +123,9 @@ public final class LookupUtils {
 
                 @Override
                 public Integer next() {
-                    return pos++;
+                    pos++;
+                    if (pos > getSize()) throw new NoSuchElementException();
+                    return pos;
                 }
             };
         }