使用Collections.binarySearch创建搜索

问题描述 投票:-1回答:1

我正在做一个Web应用程序,我需要实现一个站点搜索。将在搜索字段中搜索的参数是Integer。我用这个类来比较两个列表项

public class Comparators {

public static class CompareByNumber implements Comparator<Flight>, Serializable {

        private static final long serialVersionUID = -2382790006724690579L;

        @Override
        public int compare(Flight f1, Flight f2) {
            return f1.getNumber().compareTo(f2.getNumber());
        }

    }
}

之后,我执行以下操作,我正在尝试使用binarySearch。但我不知道要传递什么作为关键。搜索用户在搜索字段中输入的内容。我将非常感谢你的帮助!

List<Flight> flight = db.findFlightsByAircompany(aircompany);
String search = request.getParameter("search");
        if ("number".equals(search)){
            Collections.sort(flight, new Comparators.CompareByNumber());
            Collections.binarySearch(flight, "", new Comparators.CompareByNumber());
        }
java servlets java-web-start
1个回答
0
投票

您应该传递一个Flight对象,其getNumber()方法返回您要查找的整数。

© www.soinside.com 2019 - 2024. All rights reserved.