问答详情
源自:6-1 学生选课---判断 List 中课程是否存在

List中contains()方法和indexOf()方法的区别?

这一节中老师讲到了判断一个集合中是否有某个元素可以用contains()方法,可我看到contains()的返回值直接就是indexOf()是否大于等于0,如图:

http://img.mukewang.com/581b2ca80001a0d805920243.jpg

那么为什么还要用contains()方法呢?

还有我在一个集合中存放了一个字符串"a",这时我调用contains()方法查找"a",得到的是true,而我用indexOf()查找"a"时却返回了-1,这是为什么呢?


提问者:锦衣夜行_0 2016-11-03 20:29

个回答

  • vampirexxj4020184
    2016-11-04 11:48:10

    indexOf要求你传入的参数是数值,是它的位置,而不是你存储的东西

    比如说你是这么存的    0    bob

                                      1     jane

                                     2      lucy

    这时,你调用indexof(1),查找到的是Jane