2156번: 포도주 시식 효주는 포도주 시식회에 갔다. 그 곳에 갔더니, 테이블 위에 다양한 포도주가 들어있는 포도주 잔이 일렬로 놓여 있었다. 효주는 포도주 시식을 하려고 하는데, 여기에는 다음과 같은 두 가지 규칙이 있다. 포도주 잔을 선택하면 그 잔에 들어있는 포도주는 모두 마셔야 하고, 마신 후에는 원래 위치에 다시 놓아야 한다. 연속으로 놓여 있는 3잔을 모두 마실 수는 없다. 효주는 될 수 있는 대로 많은 양의 포도주를 맛보기 위해서 어떤 포도주 잔을 선택해야 할지 고 www.acmicpc.net 해당 문제에서 유심히 봐야할 조건은 1. 연속으로 3잔을 마실 수 없다. 2. 안마시고 건너뛰어도 된다. 따라서 우리는 현재 n번째 와인을 마실 수 있을 때 세가지의 경우를 고려해볼 수 있다. 첫번째..
String 클래스 String클래스의 주된 특지은 바로 'Immutable ' 변경불가능 하다는 것이다. String클래스에서는 문바열을 저장하기 위해서 문자형 배열 변수(Char[] v) value를 인스턴스 변수로 정의해놓고 있다. 인스턴스 생성 시, 생성자의 매개변수로 입력받는 문자열이 인스턴스 변수 (value)에 문자형 배열(char[])로 저장되는 것이다. public final class String implements java.io.Serializable, Comparable{ private char[] value; } 따라서 한번 생성된 String 인스턴스가 가지고 있는 문자열은 변경 할 수 없다. String a = "a"; String b = "b"; String a = a+b; ..
* 본문은 자바의 정석 chapter 9장을 정리한 내용입니다 Object 클래스는 모든 클래스의 최고 조상이다. 따라서 Object 클래스의 멤버들은 모든 클래스에서 바로 사용 가능하다. 그렇다면 Object 클래스의 메서드에는 어떠한 것들이 있는지 알아보자! protected Object clone() //객체 자신의 복사본 반환 public boolean equals(Object obj) // 객체 자신과 객체 obj가 같은 객체인지 알려준다 protected void finalize() //객체 소멸 시 가비지 컬렉터에 의해 자동 호출. public Class getClass() //객체 자신의 클래스 정보를 담고 있는 Class 인스턴스 반환 public int hashCode() //객체 자신..