「java二维数组排序」java二维数组排序comparator

博主:adminadmin 2022-12-22 11:39:05 67

本篇文章给大家谈谈java二维数组排序,以及java二维数组排序comparator对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

java 对二维数组排序的几种方法

我就是举一个num[3][3]的例子啊

如果是更大的数组,只要改动一下代码中 i,j的值就可以了

我也正在学java,

QQ:374122021,希望能多交流,一起进步

刚开始忽略了一个小东西,现在可以了

public class Test

{

public static void main(String[] args)

{

MyTest t=new MyTest();

t.f();

t.print();

}

}

class MyTest

{

int [][] num=new int[][]{{2,3,8},{9,1,6},{3,5,7}};

int t;

void f()

{

for(int j=0;j3;j++)

for(int k=0;k2;k++)

for(int i=0;i2;i++)

{

if(num[i][j]num[i+1][j])

{t=num[i][j];num[i][j]=num[i+1][j];num[i+1][j]=t;}

}

}

void print()

{

for(int i=0;i3;i++)

{

for(int j=0;j3;j++)

System.out.print(num[i][j]+" ");

System.out.println();

}

}

}

java二维数组只对每行的数据进行排序

你可以把二维数组理解成普通的一维数组,只不过这个一维数组的每一个元素又是一个数组。

像遍历普通数组那样遍历二维数组的行,这样就得到了每一行的数组,然后排序。ok

java编写一个方法,使用下面的方法头对二维数组排序 public static void sort(int m[][])

没理解楼主的问题,所以写了两个,看是哪个

//1

    public static void main(String[] args) {

int before[][] = { { 2, 3 }, { 4, 2 }, { 5, 2 }, { 1, 3 }, { 4, 1 } };

sort(before);

show(before);

}

private static void show(int[][] before) {

for (int i = 0; i  before.length; i++) {

for (int j = 0; j  before[i].length; j++) {

System.out.print(before[i][j]);

System.out.print(",");

}

System.out.println();

}

}

public static void sort(int num[][]) {

int temp = num[0].length;

for (int i = 0; i  temp; i++) {

if (i == 0) {

int[] temp1;

for (int j = 0; j  num.length; j++) {

for (int j2 = j + 1; j2  num.length; j2++) {

if (num[j][i]  num[j2][i]) {

temp1 = num[j];

num[j] = num[j2];

num[j2] = temp1;

}

}

}

}

if (i == 1) {

int temp2;

for (int j = 0; j  num.length; j++) {

for (int j2 = j + 1; j2  num.length; j2++) {

if (num[j][i - 1] == num[j2][i - 1]) {

if (num[j][i]  num[j2][i]) {

temp2 = num[j][i];

num[j][i] = num[j2][i];

num[j2][i] = temp2;

}

}

}

}

}

}

}

//1结果:

//    1,3,

//    2,3,

//    4,1,

//    4,2,

//    5,2,

//---------------------------

//2

public static void main(String[] args) {

int i, j;

Scanner input = new Scanner(System.in);

System.out.println("please input the row:");

int m = input.nextInt();

System.out.println("please input the column:");

int n = input.nextInt();

int[][] before = new int[m][n];

System.out.println("please input the before:");

for (i = 0; i  m; i++) {

for (j = 0; j  n; j++) {

before[i][j] = input.nextInt();

}

}

for (int[] ks : before) {

sort(ks);

}

show(before);

}

private static void show(int[][] before) {

for (int i = 0; i  before.length; i++) {

for (int j = 0; j  before[i].length; j++) {

System.out.println("num" + i + ":" + before[i][j]);

}

}

}

public static void sort(int num[]) {

int temp;

for (int i = 0; i  num.length; i++) {

for (int j = i+1; j  num.length; j++) {

if (num[i]  num[j]) {

temp = num[i];

num[i] = num[j];

num[j] = temp;

}

}

}

}

关于java二维数组排序和java二维数组排序comparator的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

The End

发布于:2022-12-22,除非注明,否则均为首码项目网原创文章,转载请注明出处。