something like equalsIgnoreCase while using indexOf

前端 未结 4 2019
谎友^
谎友^ 2021-01-13 05:25

I am using this code, to get the index of a String in an Array.

int n = Arrays.asList(Names).indexOf(textBox.getText());

The problem here i

4条回答
  •  醉酒成梦
    2021-01-13 05:57

    You can extend ArrayList in this way

        public class StringArrayList extends ArrayList {
            @Override
            public boolean contains(Object o) {
                String paramStr = (String)o;
                for (String s : this) {
                    if (paramStr.equalsIgnoreCase(s)) return true;
                }
                return false;
            }
    
            public int indexOf(Object o) {
                String paramStr = (String)o;
                int index = 0;
                for (String s : this) {
                    if (paramStr.equalsIgnoreCase(s)) return index;
                    index++;
                }
                return -1;
            }
        }
    

    Eventually :

    int n = new StringArrayList(Arrays.asList(Names)).indexOf(textBox.getText());
    

提交回复
热议问题