728x90

toString()메소드는 객체가 가지고 있는 정보나 값들을 문자열로 만들어 리턴하는 메소드이다.

객체를 그냥 출력하면 우리가 저장한 값이 아니라 해시태그 값을 나타낸다.

package day0916;
public class Car {	
	//필드
	//차량번호
	private String number;
	//차량 종류
	private String type;
	//연식
	private int year;
	//가격
	private int price;
	//색깔
	private String color;
	
	
	//파라미터가 없는 생성자
	public Car() {//파라미터가 없으니까 초기화를 해줘야함
		number = new String();
		type = new String();
		year =0;
		price =0;
		color = new String();
	}

	
}
package day0916;

public class Play {
	public static void main(String[] args) {
		Car c1 = new Car();
		
		c1.setNumber("00가 0000");
		c1.setType("모닝");
		c1.setYear(2019);
		c1.setPrice(500000);
		c1.setColor("빨간색");
		
		System.out.println(c1);
		System.out.println(c1.toString());//두개가 같다
	}

}

 

day0916.Car@15db9742

day0916.Car@15db9742

저렇게 출력하면 내가 저장한 값이 아니라 해시태그 값이 나온다. 형식은 저렇게 해도 똑같이 나온다.

이때 toString()메소드를 이용해 문자열로 변환해서 내가 원하는 값을 보일 수 있다.

package day0916;
public class Car {	
	//필드
	//차량번호
	private String number;
	//차량 종류
	private String type;
	//연식
	private int year;
	//가격
	private int price;
	//색깔
	private String color;
	
	
	//파라미터가 없는 생성자
	public Car() {//파라미터가 없으니까 초기화를 해줘야함
		number = new String();
		type = new String();
		year =0;
		price =0;
		color = new String();
	}

	public String toString() { 
		return "차량번호: " +number+
				", 차량종류: "+type+
				", 차량가격: "+price+"원"+
				", 차량연식: "+year+"년"+
				", 차량색상: "+color;
	}
	
}

a메소드를 정의한 클래스에서 toString()메소드를 위와 같이 선언을 해주면

차량번호: 00가 0000, 차량종류: 모닝, 차량가격: 500000원, 차량연식: 2019년, 차량색상: 빨간색

이렇게 원하는 값을 나타낼 수 있다.

728x90

'JAVA' 카테고리의 다른 글

ArrayList  (0) 2020.09.21
set, get 메소드를 사용하는 이유  (0) 2020.09.17
배열 연습문제04  (0) 2020.09.12
배열, 2차원 배열 정리  (0) 2020.09.12
for 연습05  (0) 2020.09.09

+ Recent posts