【问题标题】:indexOf and BufferedReader not working for meindexOf 和 BufferedReader 不适合我
【发布时间】:2014-04-20 14:39:26
【问题描述】:

我正在尝试使用 BufferedReader 获取数组列表中元素的索引。它处理得很好,没有错误,但是每次我给输入元素时,它都会给出-1的输出。任何元素,它总是-1。怎么了?

import java.util.ArrayList;
import java.io.*;

class family {
public static void main(String args[]) throws IOException {

BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

String input;

ArrayList<String> al = new ArrayList<String>();

al.add("Mama");
al.add("Papa");
al.add("Sister");
al.add("baby");


System.out.println(al);

System.out.println("Family Member Number: ");
input = br.readLine();

System.out.println(al.indexOf("input"));

}

}

我想要发生的是输出必须等于它们的索引。比如妈妈=0,爸爸=1等等……

【问题讨论】:

    标签: java arraylist bufferedreader indexof


    【解决方案1】:

    试试indexOf(input),不带引号。仅当预期数组包含 string "input" 时,您编写的内容才有意义。

    【讨论】:

      【解决方案2】:

      假设您确实在提示符处正确提供了请求的字符串(包括正确的大小写),您应该调用

      a1.indexOf(input);
      

      即不带引号。否则,你总是试图找到字符串“input”的索引,当然是-1,因为ArrayList中没有这样的字符串;

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2016-03-01
        • 1970-01-01
        • 1970-01-01
        • 2019-11-16
        • 2017-08-09
        • 1970-01-01
        • 2017-12-11
        相关资源
        最近更新 更多