import java.util.*;
public class Main {
public static void main(String[] args) {
LinkedList l1=new LinkedList();
for (int i=100;i<=600;i+=100)
{
l1.add(i);
}
System.out.println(l1);
System.out.println(l1.indexOf("200"));
System.out.println(l1.lastIndexOf("200"));
}
}
输出:
[100,200,300,400,500,600]
-1 *&lt; -------------为什么你得到这个o / p ...我们不能使用for循环按索引的升序顺序添加数据*
-1
LinkedList l1=new LinkedList();
l1.add("100");
l1.add("200");
l1.add("300");
l1.add("400");
System.out.println(l1);
System.out.println(l1.indexOf("200"));
System.out.println(l1.lastIndexOf("200"));
}
输出:
[100,200,300,400]
1 &lt; -------------------在单独添加时,您获得正确的o / p;我的意思是我预期的方式
1
LinkedList l1=new LinkedList();
for (int i=100;i<=600;i+=100)
{
l1.add(i);
}
l1.add("100");
l1.add("200");
l1.add("300");
l1.add("400");
System.out.println(l1);
System.out.println(l1.indexOf("200"));
System.out.println(l1.lastIndexOf("200"));
输出:
[100,200,300,400,500,600,100,200,300,400]
7 &lt; ---这个o / p甚至不关心使用for循环添加的元素。只考虑单独添加的元素..为什么
7
答案 0 :(得分:1)
您正在将int添加到列表中,但尝试获取String的索引。你可以试试这个,
System.out.println(l1.indexOf(200));
答案 1 :(得分:0)
您使用的是整数(int i
)。 可能成为问题。添加值时尝试转换为字符串。例如:
import java.util.*;
public class Main {
public static void main(String[] args) {
LinkedList l1=new LinkedList();
for (int i=100;i<=600;i+=100)
{
l1.add(String.valueOf(i));
}
System.out.println(l1);
System.out.println(l1.indexOf("200"));
System.out.println(l1.lastIndexOf("200"));
}
}