안녕하세요 저는이 프로그램을 작성 중이며 배열에서 두 항목을 비교하여 가장 큰 항목을 찾는 방법을 알아 내려고하고 있습니다.AnyType 배열에서 가장 큰 것을 찾으십시오
public static <T extends Comparable< ? super T>> T getLargest(T [] a, int low, int high){
if(low>high)
throw new IllegalArgumentException();
T[] arrCopy = (T[]) new Object[high-low]
for(int i=low;i<high;i++){
if(a[i]>a[i+1])
arrCopy[i]=a[i];
else
arrCopy[i]=a[i+1];
}
return arrCopy[0];
}
그러나 나는 그것을 테스트하는 방법을 모른다, 나는 시도 :
T[] a = {1,12,7,45,22,23,5};
System.out.println("Array: [1,12,7,45,22,23,5] low=0 high, Largest?: " + rec.getLargest(a, 0, 6));
하지만 오류 메시지가
방법 getLargest (T []를 얻을, int, int) 타입은 Rec (int [], int, int) 인수에는 적용 할 수 없습니다.
어떻게 m 숫자의 배열? 가장 큰 문자열을 얻으려는 코드로 문자열 배열을 사용할 수 있습니까?
어쩌면 간단한 답변 일지 모르지만 나는 잠시 동안 전체 프로그램을 작업 해 왔으며 모든 것이 분명해 보이지 않습니다.
[]에 정수 [] INT에서 배열을 변경 한 후 EDIT
. 내가
운영자 말을이 라인
if(a[i]>a[i+1])
에 오류를 얻고있다> 내가 할 수있는>
기호를 변경해야 할 것입니다 있으리라 믿고있어, 인수의 형태 (들) T에 대한 T
을 정의되지 배열의 요소를 비교하지만 어떻게해야합니까? compareTo()를 사용 하시겠습니까?
좋아, 완벽하게 작동했습니다. 매우 감사합니다. – randomizertech
이제 다른 오류가 나타납니다. 편집을 참조하십시오. – randomizertech
@ fgualda87 - 나는 대답했다. 그러나 일반적으로이 사이트의 각 질문은 하나의 질문이어야한다. 더 많은 질문이 있으면 새 질문을 엽니 다. 그렇게 빨리 답을 얻을 수 있습니다. (내가 이미 가지고 있다고 생각했기 때문에 다른 사람이 대답하지 않았다고 가정합니다.) –