자바 의 arrays 배열 정렬 예제 공유
1.기본 데이터 형식의 배열 정렬
설명:
(1)Arrays 클래스 의 sort()는'조 정 된 빠 른 정렬 법'을 사용 합 니 다.
(2)예 를 들 어 int[],double[],char[]등 기본 데이터 형식의 배열,Arrays 류 는 기본 적 인 오름차 순 배열 만 제공 하고 해당 하 는 내림차 순 배열 방법 을 제공 하지 않 았 다.
(3)기본 유형의 배열 을 정렬 하려 면 이 배열 을 해당 하 는 패 키 징 클래스 배열 로 바 꿔 야 합 니 다.예 를 들 어 Integer[],Double[],Character[]등 이 배열 을 정렬 해 야 합 니 다.(차라리 먼저 오름차 순 서 를 매기 고 자신 이 장 서 를 바 꾸 는 것 이 낫다.
기본 오름차 순 으로 배열 을 정렬 합 니 다.
함수 원형:static void sort(int[]a) 지정 한 int 형 배열 을 숫자 오름차 순 으로 정렬 합 니 다.
static void sort(int[] a, int fromIndex, int toIndex) 지정 한 int 형 배열 의 지정 범 위 를 숫자 오름차 순 으로 정렬 합 니 다.
코드 인 스 턴 스:
import java.util.Arrays;
public class ArraysSort_11 {
public static void main(String args[])
{
int[] a={1,4,-1,5,0};
Arrays.sort(a);
// a[] {-1,0,1,4,5}
for(int i=0;i<a.length;i++)
System.out.print(a[i]+" ");
}
}
2.복합 데이터 형식의 데이터 정렬함수 원형:
(1)public static
(2)public static
설명:이 두 정렬 알고리즘 은'조 정 된 병합 정렬'알고리즘 입 니 다.
코드 인 스 턴 스:
package aa;
import java.util.Arrays;
import java.util.Comparator;
public class Arraysort {
Point[] arr;
Arraysort(){
arr=new Point[4]; // arr,
for(int i=0;i<4;i++)
arr[i]=new Point();
}
public static void main(String[] args) {
Arraysort sort=new Arraysort();
sort.arr[0].x=2;sort.arr[0].y=1; // ,
sort.arr[1].x=2;sort.arr[1].y=2;
sort.arr[2].x=1;sort.arr[2].y=2;
sort.arr[3].x=0;sort.arr[3].y=1;
Arrays.sort(sort.arr, new MyComprator()); // ,
for(int i=0;i<4;i++) //
System.out.println("("+sort.arr[i].x+","+sort.arr[i].y+")");
}
}
class Point{
int x;
int y;
}
// ,x ;x , y
class MyComprator implements Comparator {
public int compare(Object arg0, Object arg1) {
Point t1=(Point)arg0;
Point t2=(Point)arg1;
if(t1.x != t2.x)
return t1.x>t2.x? 1:-1;
else
return t1.y>t2.y? 1:-1;
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Is Eclipse IDE dying?In 2014 the Eclipse IDE is the leading development environment for Java with a market share of approximately 65%. but ac...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.