如何检查arraylist中的字符串?

时间:2017-02-21 17:27:36

标签: java arraylist

我想检查'回复'是否存在在我的arraylist中,但是当我运行我的程序时,它不起作用,我有点迷失。如果我的arraylist中存在回复,我希望它将该元素与最后一个元素交换。我尝试过使用.matches类,但是没有用。

case 2: 
        System.out.println("What employee do you want to remove, Enter full name: ");

        String reply = input.next();

        for(String checkName : EmployeeNameList)

            if(checkName.equalsIgnoreCase(reply)){

                swapByIndex(EmployeeSalaryList, swapList(EmployeeNameList,reply));

            }

            break;

这些是我的交换方法。

public static<T>int swapList(ArrayList<T> list, T reference){
    T  t = null;
    T i;

    for(T ref : list){
        if(ref.equals(reference)){
            t = ref;
        }

    }

    i= list.get(list.size()-1);
    list.set(list.indexOf(t),i);
    list.set(list.size()-1,t);

    return list.indexOf(t);
}
public static<T> void swapByIndex(ArrayList<T> list, int index){
    T t;
    t = list.get(list.size()-1);
    list.set(index, t);
    list.set(list.indexOf(t), list.get(index));


}

2 个答案:

答案 0 :(得分:0)

使用ArrayList

的方法包含

示例:

    public void containsExample(){
    ArrayList<String> array = new ArrayList<>();
    array.add("example1");
    array.add("example2");
    array.add("example3");
    if(array.contains("example1")){
        System.out.println("example1 exists");
    }
}

答案 1 :(得分:0)

您可以使用列表

中已定义的方法来完成此操作
if(EmployeeNameList.contains(reply)){
                EmployeeNameList.set(EmployeeNameList.indexOf(reply), list.get(list.size()-1));
                EmployeeNameList.set(EmployeeNameList.size()-1, reply);
    }