【问题标题】:Two dimensional string array in javajava中的二维字符串数组
【发布时间】:2013-10-10 23:45:27
【问题描述】:

我是 java 新手,请帮我解决这个问题。
我有一个字符串可以说

adc|def|efg||hij|lmn|opq

现在我拆分这个字符串并将其存储在一个数组中使用

String output[] = stringname.split("||");

现在我再次需要根据 '|' 拆分它 我需要类似的东西

arr[1][]=adc,arr[2][]=def
等等,这样我就可以访问每个元素。 类似于二维字符串数组。 我听说这可以使用 Arraylist 来完成,但我无法弄清楚。 请帮忙。

【问题讨论】:

  • 抱歉,预期为 arr[0][0]=adc,arr[0][1]=def 等等。

标签: java arraylist multidimensional-array


【解决方案1】:

这是您的解决方案,除了 names[0][0]="adc"、names[0][1]="def" 等等:

String str = "adc|def|efg||hij|lmn|opq";
String[] obj = str.split("\\|\\|");
    int i=0;
    String[][] names = new String[obj.length][]; 

    for(String temp:obj){
        names[i++]=temp.split("\\|");

    }
List<String[]> yourList = Arrays.asList(names);// yourList will be 2D arraylist.
System.out.println(yourList.get(0)[0]); // This will print adc.
System.out.println(yourList.get(0)[1]); // This will print def.
System.out.println(yourList.get(0)[2]); // This will print efg.
               // Similarly you can fetch other elements by yourList.get(1)[index]

【讨论】:

  • 你为什么要逃离管道?
  • 我试过没有转义管道,但它没有正确拆分字符串。这就是为什么我添加转义管道和宾果游戏......它的工作原理。 :)
  • 问题的ArrayList 部分在哪里?!
  • 但是如何从名称数组中提取每个字符串?它说空。
  • @R.J 我忘了粘贴最后一行。 ;) @Magic - 它是 names 数组,而不是 name,顺便说一句,您是如何访问它的?
【解决方案2】:

你可以做的是:

String str[]="adc|def|efg||hij|lmn|opq".split("||");
String str2[]=str[0].split("|");
str2 will be containing abc, def , efg
// arrays have toList() method like:

Arrays.asList(any_array);

【讨论】:

  • 你的意思是说使用单独的数组根据'|'对其进行细分??但产生的 rof 分裂数各不相同。
  • 我的意思是你如何访问它们,根据你的需要,你可以循环它们并将它们放入数组,arrayList 任何你想要的,我展示了如何分割它们
【解决方案3】:

很难理解你的问题...

我猜你可能想使用二维 ArrayList:ArrayList&lt;ArrayList&lt;String&gt;&gt;

String input = "adc|def|efg||hij|lmn|opq";
ArrayList<ArrayList<String>> res = new ArrayList<ArrayList<String>>();
for(String strs:input.split("||")){
    ArrayList<String> strList = new ArrayList<String>();
    for(String str:strs.split("|"))
        strList.add(str);
    res.add(strList);
}

【讨论】:

    猜你喜欢
    • 2010-12-19
    • 2019-02-18
    • 1970-01-01
    • 2013-11-30
    • 2017-04-16
    • 2012-02-24
    • 2016-05-06
    • 2011-02-16
    • 2021-06-12
    相关资源
    最近更新 更多