지난 몇 시간 동안 나 혼자서 이것을 알아 내려고 노력했지만 계속되었습니다.자바의 배열 요소를 찾아서 반환합니다.
나는 사람의 이름, 나이, 높이 (단위 cm) 목록이있는 배열이 있습니다. 그 사람의 이름 만 매개 변수로 사용하고 배열의 이름을 검색하는 메서드를 만들고 싶습니다. 일치하는 이름이없는 경우는 null을 리턴합니다. 나는 그것이 옳지 않다 알고
public data findData(String name) {
for (int i = 0; i < numberData; i++) {
if (name == data[i]) {
return data[i];
} else {
return null;
}
}
}
.. 내가 지금까지 노력했습니다 무엇
data = new data[50];
data[0] = new data("Dan", 23, 179);
data[1] = new data("David", 20, 180);
data[2] = new data("Sharon", 19, 162);
data[3] = new data("Jessica", 22, 160);
data[4] = new data("Nancy", 25, 164);
...
numberData = 30; // this is the number of people that are in this array so far
이,하지만 난 찾을 수 없습니다 :
은 다음과 같습니다 해결책. 어떤 아이디어?
name.equals (데이터 [I]) - 참조 할 : http://stackoverflow.com/questions/513832/how-do- i-compare-strings-in-java –
'data' 클래스를 보여주십시오. 또한 대개 대문자로 된 첫 번째 문자로 클래스를 호출합니다. 마지막으로 'data'라는 배열과'data'라는 클래스가있을 때 꽤 오해의 소지가 있습니다. – Berger
대신 배열의 'length' 속성을 사용하거나'numberData' 변수를 사용해야합니다. – AntoineB