Arrays
클래스는 상황에 맞는 유용한 방법을 제공합니다.
public static void main(String[] args) {
char[] pngheader = new char[] { 137, 80, 78, 71 }; // PNG
char[] fileheader = new char[] { 137, 80, 78, 71 , 1, 2};
char[] fileheader2 = new char[] { 131, 80, 78, 71 , 1, 2};
boolean equals = Arrays.equals(Arrays.copyOf(pngheader, 4),
Arrays.copyOf(fileheader, 4));
System.out.println(equals); //prints true
boolean equals2 = Arrays.equals(Arrays.copyOf(pngheader, 4),
Arrays.copyOf(fileheader2, 4));
System.out.println(equals2); //prints false
}
이 또한 생성 방법,보다 재사용 될 수있다.
public static boolean arraysEquals(char[] arr1, char[] arr2, int length){
return Arrays.equals(Arrays.copyOf(arr1, length -1),
Arrays.copyOf(arr2, length -1));
}
//Usage
arraysEquals(pngheader, fileheader, 4);
arraysEquals(pngheader, fileheader2, 4);
당신은 문자의 인덱스를 알고 계십니까 문자 배열과 함께 작동합니까? – Janman
몇 글자 뜻? 심지어 0은이 카테고리에 포함됩니다 :-) – Ankit
당신의 질문은 다소 모호합니다. 하지만 현재의 경우에 대해 "우아한"방법을 원한다면 ... 이것은 내가 생각해 낼 수있는 것입니다. Arrays.equals (Arnold, Arrays.copyOf (fileheader, pngheader.length)); 이 경우 – Akash