有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

在java算法中拆分字符串

我有以下字符串:

FIELD,KEY,0,AREA,2,3,4

我需要找出keyarea的值,并将它们转换为整数数组。。e、 g

key = {0};
area = {2,3,4}

我怎样才能做到这一点


共 (2) 个答案

  1. # 1 楼答案

    这样怎么样:

    static Map<String,List<Integer>> parse(String input) {
        Map<String,List<Integer>> result = new HashMap<String,List<Integer>>();
        String[] items = input.split(",");
        int i = 0;
        while (i < items.length) {
            String name = items[i++];
            List<Integer> list = new ArrayList<Integer>();
            while (i < items.length && items[i].matches("^[0-9]+$")) {
                list.add(Integer.valueOf(items[i++]));
            }
            result.put(name,list);
        }
        return result;
    }
    
    public static void main(String[] args) {
        Map<String,List<Integer>> map = parse("FIELD,KEY,0,AREA,2,3,4");
        System.out.println(map.get("KEY"));
        System.out.println(map.get("AREA"));
    }    
    
  2. # 2 楼答案

    简单地说:

    String input = "FIELD,KEY,0,AREA,2,3,4";
    String key = input.split(",")[1]; //gets "KEY"
    String keyValue = input.split(",")[2]; //gets "0"
    

    作为家庭作业,我留给你们的任务是找到得到"AREA"的表达式