【问题标题】:Getting Index of Arraylist in Java在 Java 中获取 Arraylist 的索引
【发布时间】:2015-11-15 06:27:20
【问题描述】:
    ArrayList<String> str = new ArrayList<String>();
    String s1 ="Test1";
    String s2 ="Test2";
    str.add(s1);
    str.add(s2);

我想将一个字符串与数组的一个元素进行比较。

    String b = "Test1";

    b.equals(str[index??]);

如何获取str的索引?

【问题讨论】:

  • str.get(index); 因为它是一个 ArrayList。 WHERE INDEX 是一个 INT

标签: java indexing


【解决方案1】:

这是一个数组列表。因此,要存储具有特定索引的数组的值,请使用:

ArrayList.get(index);

现在,您可以让它等于这样的变量:

 String mStr = ArrayList.get(index);

如果我有一个值为 "1, 2, 3, 4" 的数组列表,请务必注意,索引 0 是值 1。

ArrayList.get(0) //HERE, THE INDEX IS ZERO, MEANING THE VALUE OF THE ARRAY LIST WOULD BE 1

输出: 1


这很容易混淆;索引 0 = 第一个值。请务必使用 get() 方法。

要进一步比较字符串,请将值设置为等于字符串:

 String FIRSTSTRING= ArrayList.get(0);
 String SECONDSTRING= ArrayList.get(1);

这里,我比较的是数组列表的第一个和第二个值。

如果您觉得这有帮助,请将其标记为最佳答案。如果您需要更多帮助,请随时问我,我很乐意为您提供帮助!

{Ruchir}

【讨论】:

    【解决方案2】:

    您想要List.get(int)(其中int 是索引)。例如,

    List<String> al = Arrays.asList("Test1", "Test2");
    System.out.println(al.get(0).equals("Test1"));
    

    输出是

    true
    

    【讨论】:

      【解决方案3】:

      你可以试试这样的

          ArrayList<String> str = new ArrayList<String>();
          ...
          boolean found = false;
          for(String string : str)
          found =b.equals(string);
      

      除此之外,你可以使用get列表方法。

      【讨论】:

        【解决方案4】:

        你可以使用indexOf()方法。

        ArrayList<String> str = new ArrayList<String>();
        String s1 ="Test1";
        String s2 ="Test2";
        str.add(s1);
        str.add(s2);
        
        System.out.println(str.indexOf("Test1"));
        

        如果你想使用 str.get(index) 方法然后检查使用循环,但我觉得这更复杂。

        for(int i = 0; i < list.size(); ++i)
          if(list.get(i).equals("rtes"))
            return i;
        

        【讨论】:

          【解决方案5】:

          如果您的数组已排序,请使用二分搜索。否则,只需线性进入数组列表,然后比较值。

          在你的情况下:

          boolean find = false;
          for(i=0;i<str.length;i++){
              if(str.get(i) == b){
                 find = true;
                 break;
              }
          }
          

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2013-05-02
            • 1970-01-01
            相关资源
            最近更新 更多