내 코드의이 부분에서는 왜 테스트 클래스가 작동하지 않는지 궁금해하고있었습니다. 나는 지시 사항을 정확하게 따라 갔지만, 나는 왜 내가 나의 잘못을 얻고 있는지 확신 할 수 없다. 기본적으로 두 부분 모두에 대해 array 매개 변수가 null 인 경우 "Array is null"메시지와 함께 BadArrayException을 throw해야합니다. 배열 매개 변수의 길이가 0이면 -1을 반환해야합니다. 배열 매개 변수 내용을 변경하거나 전체 배열 매개 변수 내용을 다른 배열로 복사해서는 안됩니다. 첫 번째 어커런스를 찾으려면 배열 매개 변수를 한 번 검색해야합니다. 아무 것도 읽거나 인쇄하지 않습니다.for 루프가이 코드에서 오류를 일으키는 원인은 무엇입니까?
처음에는 intvalue = 0을 어떻게 수정해야합니까? 또는 내 for 루프에 결함이 있습니까? 또는 두 번째 루프에서 list.length로 마지막 int가 없어야합니까?
public static int indexOf(int[] list, int searchValue) throws BadArrayException
{
int indexValue = 0;
if(list == null)
throw new BadArrayException("Array is null");
else if(list.length == 0)
return -1;
for(int i = 0; i < list.length; i++){
if(list[i] == searchValue)
indexValue = i;
}
return indexValue;
}
public static int lastIndexOf(int[] list, int searchValue) throws BadArrayException
{
int indexValue = 0;
int last = list.length;
if(list.length == 0)
return -1;
for(int i = last; i >= 0; i--){
if(list[i] == searchValue)
indexValue = i;
}
return indexValue;
}
}
내가 하죠
내 결과로이를 받고있다하지만 난 아니에요, 나는 오류가이 부분에 예상치 못한있어 점점 계속. 고맙습니다.--- Testing indexOf and lastIndexOf method ---
Getting indexOf of a null array
OK - indexOf threw exception for null array: BadArrayException: Array is null
Getting lastIndexOf of a null array
OK - lastIndexOf threw exception for null array: BadArrayException: Array is null
Getting lastIndexOf(5) of: []
OK - expected lastIndexOf to return -1 and got: -1
Getting indexOf(5) of: [5,10,5,15,5]
OK - expected indexOf to return 0 and got: 0
Getting indexOf(0) of: [5,10,5,15,5]
OK - expected indexOf to return -1 and got: -1
Getting indexOf(15) of: [5,10,5,15,5]
OK - expected indexOf to return 3 and got: 3
그리고 여기에 내가 무엇을 얻을 대신 --- 테스트 같이 IndexOf와 lastIndexOf에서도 방법 --- 널 배열 OK의 같이 IndexOf를 얻기
- 같이 IndexOf가 null 배열에 대한 예외를 던졌다 : BadArrayException
을null 배열의 lastIndexOf를 얻는 중 오류 - lastIndexOf가 예기치 않은 예외를 발생 시켰습니다 : java.lang.NullPointerException이
같이 IndexOf (5)의 방법 : [] OK - 기대 같이 IndexOf이 돌아 -1있어 : -1
이이 lastIndexOf에서도 (5)의하기 : [] OK - lastIndexOf에서도 예상 반환 -1 -1
중 같이 IndexOf (20) 얻기 : 얻은 [20] OK - 0을 반환 예상 같이 IndexOf를 얻은 0
중 같이 IndexOf (25) 방법 : [20] ERROR - 예상 같이 IndexOf을 -1을 되찾았지만 얻은 값 : 0
,210얻기 lastIndexOf에서도 (20)의 : [20] OK - 0을 반환하고있어 할 것으로 예상 lastIndexOf에서도 : 0
이의 lastIndexOf에서도 (25) 방법 : [20] 오류 - 반환 lastIndexOf에서도 예상 -1 만 가지고 : 0
이 같이 IndexOf (5)의 방법 : [5,10152010155101520] 오류 - 기대 같이 IndexOf는 0을 반환하지만 것은 가지고 : 6
가져 오는 중 indexOf (10) : [5,10152010155101520] 오류 - 1을 반환하지만 예상되는 indexOf : 7
의 같이 IndexOf (15) 얻기 6,: [5,10152010155101520] ERROR - 2를 반환 할 것으로 예상 같이 IndexOf를 만 가지고 : 8
같이 IndexOf를 얻기 (20) : [5,10152010155101520] 오류 - 3을 반환 할 것으로 예상되는 인덱스 반환 값 : 9
indexOf (0) 가져 오기 : [5, 10152010155101520] 오류 - 예상 indexOf는 -1을 반환하지만 다음과 같이 표시됩니다. 0
다음 중 lastIndexOf (5) 가져 오기 : [5,10,15,20 , 10155101520] 오류 - 예상 lastIndexOf는 6을 반환하지만 다음과 같이 표시됩니다. 0
의 lastIndexOf에서도 (10) 방법 : [5,10152010155101520] ERROR - 7을 반환 lastIndexOf에서도 예상하지만 가지고 : 1
는 lastIndexOf에서도을 (얻기 15) of : [5,10152010155101520] 오류 - 예상 returnIndexOf가 8을 반환했지만 받았음 : 2
다음 중 lastIndexOf (20) 가져 오기 : [5 , 10152010155101520] 오류 - 예상 되는 lastIndexOf가 9를 반환하지만 다음과 같이 표시됩니다. 3
다음 중 lastIndexOf (0) 가져 오기 : [5,10,15,20 , 10155101520] ERROR - 예상되는 lastIndexOf를 retu RN -1 만이 가지고 :
완료 0 - 키를 눌러 종료 프로그램
0에서 시작합니다. –
당신은 우리에게 무엇이 일어나야하는지 보여주었습니다. 실제로 무슨 일이 있었습니까? – tbodt
첫 번째 색인을 찾으려면 찾고있는 것을 찾으면 찾고 _ 찾으십시오. – ajb