【问题标题】:ArrayList of array delete element and split method数组删除元素的ArrayList及拆分方法
【发布时间】:2014-12-24 16:01:24
【问题描述】:

我有一个数组的 ArrayList,我将“5”更改为“12 6”然后我将“3”与“12 6”连接起来。

[2,4,6] [1,3,5] => [2,4,6] [1,3, 12 6] => [2,4,6] [1,3 12 6, 12 6]

现在我想删除“12 6”,我的数组列表变成 [2,4,6] [1,3 12 6]

然后我想使 [1,3 12 6] 到 [1,3,12,6]

我的列表看起来像 [2,4,6] [1,3,12,6]

我不知道这是否可能以及如何去做(也许还有另一种方法)。我必须删除一个数字并添加两个数字

List<String[]> list = new ArrayList<String[]>();
    String [] arr1 = {"2","4","6"};
    String [] arr2 = {"1","3","5"};
    list.add(arr1);
    list.add(arr2);      

    for (String[] ss : list)
    {
        //System.out.println(Arrays.toString(ss));
        for ( i = 0; i < ss.length; i++) {
          if (ss[i] == "5") {                                              
            System.out.println("Yes"); 
            ss[i] = " 12 6";  
            ss[i-1] = ss[i-1] + String.valueOf(ss[i]);  
          }
        }
       System.out.println(Arrays.toString(ss));
    }

【问题讨论】:

  • 我完全不知道你想在这里做什么。你的算法很奇怪,它可能不是最好的解决方案。
  • 我没有你的问题的答案,但我强烈建议使用 Lists 而不是数组。正如 DCS_Kurtis_IT_Manager 的回答所示,Lists 比数组灵活得多。另外,我不知道您为什么要将整数表示为Strings。简而言之,将List&lt;String[]&gt; 替换为List&lt;List&lt;Integer&gt;&gt;,您会发现这更容易。
  • 另外,我注意到您在if statement 中检查了ss[i] == "5"。切勿将对象与 java 中的== 进行比较,仅将对象与.equals() 进行比较。基元(数字和枚举)非常适合与== 进行比较,因为== 比较对象的实例,而数字和枚举将始终是同一个对象,而比较字符串ss[i]"5" 是两个不同的对象。

标签: java arrays string arraylist


【解决方案1】:

数组的大小不是动态的,因此您不能将原始大小为 3 并删除大小为 2 的值。如果将它们放入数组列表中,可以使用简单的 remove() 和 if 语句来完成

另外,我很好奇你在用这个算法做什么,我觉得你在做什么都有更好的方法。

我告诉大多数初学者程序员的一个通用技巧是逐步考虑您希望执行的算法。每次你在大脑中进行某种计算/步骤时,把它写下来。完成后,如果您没有跳过任何内容,那么您将拥有最容易(对您而言)理解的算法。

“如果您不对它们进行任何类型的计算,将整数保留为字符串是完全可以接受的。从这个意义上说,它们被用作字符串,应该保持原样。” -我的老板

** 我会添加评论,但我没有 50 声望(你需要 50 似乎很愚蠢) 您需要清楚地解释您正在尝试做的事情,因为您的解释不足,因此很难为您提供帮助。

【讨论】:

  • 我有 A1= null; A2 = {14} A3 = {16} A4 = {4} A5 = {10,5,13} ... A10 和 B1 = {14, 5, 16} B2 = {4,10} B3 = {13, 15} B4 = {3, 12} B5 = {11, 6} ... B10 我需要 9 个列表 L1 = B1; L1 = {14,5,16} 对于 i=2;我 L2 = {4,10,5,16} 这里是PSLG(平面直线图)Slab Method中定位点算法的一小部分: 平面扫描
猜你喜欢
  • 2018-04-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-08-28
  • 2012-04-25
  • 1970-01-01
  • 2012-10-17
  • 2013-02-24
相关资源
最近更新 更多