728x90

 

객체배열에서는 Arrays.toString을 해도 객체가 여러개라 안먹힌다는 점

그래서 인덱스 번호 하나씩 찍고 vo클래스의 toString 메소드로 출력해야 값이 나온다는 점 기억!

배열 안에 객체 넣는 부분도 꽤나 익숙해짐. 어버버하는 부분이 꽤 많이 줄었다

 

/******************************** Object Array practice 3rd ***************************************/	

		//객체배열
		//
		// 배열 선언 : Stack 영역에 공간 생성(변수의 선언 : stack에 공간 차지)
		// 배열 할당 : heap 영역에 공간 생성
		// 배열 초기화 : 인덱스,중괄호,for문
		// 배열 삭제 : null
		// 배열 값 출력하는 방법 2가지 : for문 + vo클래스 toString메소드
		
		// 객체배열 선언
		Person02[] oArr000;
		// 객체배열 할당
		Person02[] oArr001 = new Person02[3];
		Person02[] oArr003 = new Person02[3];
		
		// 초기화
		// 	방법1 : index
		oArr001[0] = new Person02("박",25,'M',161,65);
		oArr001[1] = new Person02("강",22,'F',161,45);
		oArr001[2] = new Person02("최",22,'F',161,45);
		
		// 	방법2 : 중괄호
		// 객체배열 선언,할당과 동시에 초기화
		Person02[] oArr002 = {new Person02("김",29,'M',171,62),
				new Person02("이",28,'M',192,83),
				new Person02("최",25,'M',185,81)
		};
		
		//  방법3 : for문
		for(int i=0; i < oArr003.length; i++) {
			oArr003[i] = new Person02("a",i+20,'M',i+170,i+60);
			System.out.println(Arrays.toString(oArr003));
		}
		
//		System.out.println(Arrays.toString(oArr003[1])); // error : toString // The method toString(long[]) in the type Arrays is not applicable for the arguments (Person02)
		System.out.println(oArr003[1].personInfo());
		
		for(int i=0; i < oArr003.length;i++) {
			System.out.println(oArr003[i]); // chap06_objectArray.model.vo.Person02@33909752
		}
	
		oArr003 = null;
		System.out.println(Arrays.toString(oArr003)); // null

		System.out.println(oArr001[0].personInfo()); 
		
		for(int i=0; i < oArr001.length; i++) {
			System.out.println(oArr001[i].personInfo()); 
		}
728x90
반응형

+ Recent posts