나는이 질문에 대한 답을 찾기 위해 주변을 둘러 보았으므로 알아낼 수 없었다. 나는이 문제가 내 코드의 '범위'에있는 것으로 보이지만 내가 무엇을 잘못하고 있는지 알지 못하고 실제로 도움을받을 수 있다고 생각한다. 나는 Java에 매우 익숙하다. 객체가 이미 추가하기 전에 배열에 존재하는지For 루프가 java로 잘못 처리되는 이유는 무엇입니까?
내 목표
시험 확인합니다.
개체가 배열에 이미 있으면 null을 반환합니다.
배열에없는 경우 배열을 만든 다음 반환하십시오.
내가 실행할 때 어떻게됩니까 강령
public Business addBusiness(String person, String business, String location) {
int id = 0;
for (Business business : businesses) {
if (business.getPerson().equals(person)) {
if (business.getBusiness().equals(business)) {
if (business.getLocation().equals(location)) {
return null;
}
}
}
}
Business newBusiness = new Business(person, business, location, id);
return newBusiness;
}
그것을
내가 그냥 행복하게 같은 세부 사항을 가진 개체 후 객체를 생성합니다 코드를 실행. 이것은 내가 나의 논리에 문제가 있다고 믿게한다. 나는 그것이 null을 반환했을 때 그것을 기대 했었습니다. 그것은 그것의 끝일 것입니다.
이 문제를 해결할 수있는 조언을 보내 주시면 감사하겠습니다.
편집 : 당신은 당신이 루프를 통해 반복하고있는 객체와 함수의 서명에서 매개 변수 business
마스킹 된
public Business addBusiness(String person, String business, String location)
{
int id = 0;
for (Business b : businesses) {
if (b.getPerson().equals(person)) {
if (b.getBusiness().equals(business)) {
if (b.getLocation().equals(location)) {
return null;
}
}
}
}
Business newBusiness = new Business(person, business, location, id);
return newBusiness;
}
'비즈니스'클래스
public class Business {
// Attributes //
private String person, business, location;
private int id;
// Constructor //
public Business(String person, String business, String location, int id) {
this.person = person;
this.business = business;
this.location = location;
this.id = id;
}
// Getters //
public String getPerson() {
return person;
}
public String getBusiness() {
return business;
}
public String getLocation() {
return location;
}
public int getId() {
return id;
}
}
** 비즈니스 ** ** arraylist 또는 무엇입니까? – Developer
'business.getPerson()','business.getBusiness()'및'business.getLocation()'은 무엇을 반환합니까? –
나는 사업체의 배열을 가지고있다. 사업체가 만들어지면 사람과 사업체가 주어진다. 이 getPerson는 getBusiness이 의 getLocation 그들은 내 비즈니스 오브젝트의 '게터'방법이야 문자열을 반환하는 문자열을 반환하는 문자열을 반환합니다. "배열의 객체를 살펴보고 그 이름을 가진 사람이 이미 있는지 확인합니다. 그럴 경우 해당 이름의 비즈니스가 이미 있는지 확인합니다. 해당 위치가 이미 존재하는 경우. " - 모든 정보가 일치하면 비즈니스가 이미 배열에 존재해야합니다. –