저는 java를 처음 사용하기 때문에 해결책을 찾았지만 찾지 못했습니다.배열 객체 내부의 객체에 액세스하는 중 java
Trip 개체의 "Trip [] _data"배열이 있습니다.
"Trip"개체가 여행 출발 날짜를 나타내는 "Date"클래스를 사용하고 있으며, Inside Trip 클래스는 Trip 개체를 가져와 균등화를 완료하는 부울 메서드 "sameDepartureDate"를 this.object와 같은 출발일로 사용합니다 .
"equals"라는 "Date"안에 public 메소드가 있습니다. Date 객체를 가져와 this.object와 동일한 작업을 수행합니다.
여행 클래스 내부의 sameDepartureDate 방법은 다음과 같습니다
public boolean sameDepartureDate (Trip other){
if ((_departureDate.equals(other._departureDate)))
return true;
else return false;
}
내가 배열 안에 많은 여행이 동일한 출발 날짜를 사용하는 방법을 확인해야합니다.
즉, 주어진 "날짜 객체"가 trip 객체 내부의 배열 [i] 날짜 객체와 같으면 (Date 클래스의 equals 메서드 사용 또는 Trip 클래스의 "sameDepartureDate"사용)
배열 객체 내의 Trip/Date 클래스의 메서드를 Date 객체로 호출하려면 어떻게해야합니까?
는이 같은 방법을 구축하려고하지만 오류 "불환 유형, 필수 : 날짜, 발견 부울"얻을public int howManyTripsDeparture(Date date){
//Setting default!
int j=0;
int i;
if (date==null){
return j;
}
else for (i=0; i<_data.length; i++){
if (_data[i]==null){
j=j;
}
else if ((Date) _data[i].equals(date)){ //here is the problem :/
j=j++;
}
else j=j;
}
return j;
}
그것은 숙제를, 그 때문에 나는 여행/날짜 안에 새로운 방법을 구축하지 못할 수업.
현재 클래스 내부에서 원하는대로 새 개인 메서드를 만들 수 있습니다.
"날짜"개체에 _data [i]를 캐스팅하는 방법을 알아낼 수 없습니까? 내가 이퀄라이제이션을 할 때 포함 된 다른 데이터는 필요하지 않습니다. 내부 부울을 필요로 else if
if
때문에
else if (_data[i].getDepartureDate().equals(date)){ //here is the problem :/
j=j++;
}
그냥 당신이 내부에서 수행되는
(Date)
캐스팅을 제거 :
'여행'수업 전체를 게시 할 수 있습니까? –
_data [i]에는 '여행'이 포함되어 있으며 '날짜'로 캐스팅 할 수 없습니다. – sanbhat
얍, 감사합니다 .--) 아부가 말했듯이, 나는 (날짜) 캐스팅을 제거하고 여행을 사용했습니다. 메소드'getDepartureDate()'는 날짜 객체와 '평등'합니다. – user2325513