java - 如何在java中的arraylist中像sql中的LIKE运算符一样进行搜索

标签 java

Possible Duplicate:
how to search like LIKe operator in sql in hash map in java

friend 们大家好,

我正在数组列表中添加 HashMap 。 HashMap 值包含公司名称。我的要求是,如果用户输入“A”值,我必须显示以“A”公司名称开头的所有值。如果用户输入“AB”值,我必须显示以“AB”公司名称开头的所有值。谁能告诉我该怎么做?

我添加值的代码:

ArrayList<HashMap<String, String>> companylist = new ArrayList<HashMap<String, String>>();

StockParser stockParser=new StockParser();
       stockparsedvalue=stockParser.parseXmlArticle(stockservicevalue);
       for(int i=0;i<stockparsedvalue.size();i++)
       {
          StockParserSet parserSet=(StockParserSet)stockparsedvalue.get(i); 
          mapValue=new HashMap<String, String>();                    

          mapValue.put("companyname"+i, parserSet.getCompanyname());
          companylist.add(mapValue);

       }

谢谢

最佳答案

迭代列表并查看映射中的每个条目以查看该值是否以您要查找的内容开头。例如:

    final String prefix = "AB";
    for(HashMap<String,String> map : companylist){
        for(Entry<String,String> e: map.entrySet()){
            String companyName = e.getValue();
            if(companyName.startsWith(prefix)){
                System.out.println(companyName);
            }
        }
    }

关于java - 如何在java中的arraylist中像sql中的LIKE运算符一样进行搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4223440/

相关文章:

不同操作系统上的 JavaFx 应用程序字体

java - 在不发布的情况下提供模块时的 Tomcat 类加载顺序

java - Apache Velocity 2.0 脚本编译无法正常工作

Java Eclipse,如果包含多行,则在方法之后换行?

java - 在其他应用程序中使用 Eclipse RCP GUI

java - 将 joda LocalTime 转换为 sql 时间

java - 如何为我的项目 war 文件 Web 应用程序定向 IP 地址?

java - JTable 按键事件未触发

java - 在内存中存储大 map

java - 根据多个属性对 ArrayList 进行排序