繁体   English   中英

在Java中对2D字符串数组进行排序

[英]Sorting 2D string array in Java

我在java中使用Arrays.Sort()函数来对存储名称和相应数字的2D数组中的名称进行排序。 我希望数字保留在与相应名称相同的索引中。 我该怎么做?

提前致谢。

String[][] contact = new String[3][3];
contact[0][0] = "b";
contact[0][1] = "c";
contact[0][2] = "a";
contact[1][0] = "2";
contact[1][1] = "3";
contact[1][2] = "1";
Arrays.sort(contact[0]);

例:

BCA

2 3 1

OUTPUT:

ABC

2 3 1

我想得到:

ABC

1 2 3

在对数组进行排序之前,先复制它,然后在排序后循环排序并使用originalArray.indexOf(newArray[i])获取字符串的原始索引,然后设置新的“索引数组”[i]到原始索引数组的值[字符串的原始索引]。

在使用Arrays.asList(originalArray)执行此操作之前,需要将原始数组转换为列表。

public class MatrixCell{

 private Integer x = 0;
 private Integer y = 0;
 private String name = "";

 public MatrixCell(int x, int y, String name){
   this.x = x;
   this.y = y;
   this.name = name;
 }

 //getters and setters
}

然后制作一个MatrixCell数组并完成。 虽然这种方式你必须制作排序算法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM