게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
자바 초급 코드 질문입니다.
게시물ID : programmer_7655짧은주소 복사하기
작성자 : TimeLock
추천 : 0
조회수 : 749회
댓글수 : 5개
등록시간 : 2015/01/16 13:37:20
옵션
  • 베스트금지
  • 본인삭제금지
class TvCollection{
private Tv[] tvList;

public TvCollection(){
System.out.print("Tv정보를 입력합니다.\n정보를 입력할 Tv의 숫자를 입력해 주세요 : ");
Scanner scan = new Scanner(System.in);
int m = scan.nextInt();
for(int n = 0; n < m; n++){
System.out.print("\n" + (n + 1) + "번째 ");
setTvList(new Tv());
}
System.out.println(toString());
}
public Tv[] getTvList() {
return tvList;
}

public void setTvList(Tv... tvList) {
this.tvList = tvList;
}
public String toString(){
String info = "\n입력된 티비의 정보입니다.\n";
int n = 1;
for(Tv t : tvList){
info += n + "번 Tv의 컬러 : " + t.getColor();
info += "\tTv의 채널 수 : "  + t.getChannel();
n++;
}
return info;
}
}




클래스가 셋 있습니다.

첫 번째는 Tv Class이고 거기선 정보를 두개 가지고 있습니다.
color 와 channer

두 번째는 위와 같습니다.

세 번째는 메인메서드이고, 그 안에서 두 번째 메서드인 TvCollection을 생성합니다.

생성을 하면 생성자에서 첫 번째 클래스인 Tv 객체를 생성하고, 그 값을 가변길이를 가진 배열 tvList에 대입을 합니다.
그런데 둘 이상의 티비 정보를 입력하면 입력까진 다 됩니다.

하지만 최종 출력물인 티비 정보가 마지막에 입력한 티비의 정보값만이 출력이 됩니다.

문제가 되는 부분이 Tv객체까진 생성이 되지만 가변길이를 가진 배열 안에 저장이 되지 않는것 같습니다.

이 문제를 해결하려면 어떻게 해야되나요?
꼬릿말 보기
전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호