본문 바로가기

코딩75

객체와 인스턴스 Animal.javapublic class Animal { } 위 Animal 클래스는 가장 간단한 형태의 클래스이다. 클래스의 선언만 있고 내용이 없는 껍데기뿐인 클래스이다. 하지만 이 껍데기뿐인 클래스도 아주 중요한 기능을 가지고 있다. 그 기능은 바로 객체(object)를 만드는 기능이다.객체는 다음과 같이 만들 수 있다.Animal cat = new Animal(); new 는 객체를 생성할 때 사용하는 키워드이다. 이렇게 하면 Animal 클래스의 인스턴스(instance)인 cat, 즉 Animal의 객체가 만들어진다. ※ 객체와 인스턴스클래스에 의해서 만들어진 객체를 인스턴스라고도 한다. 그렇다면 객체와 인스턴스의 차이는 무엇일까? 이렇게 생각 해 보자. Animal cat = new Ani.. 2017. 4. 1.
for each for each 문for each는 J2SE 5.0 부터 추가되었다. for each 라는 키워드가 따로 있는 것은 아니고 동일한 for를 이용한다. 하지만 조건식 부분이 조금 다르다. 보통 다른 언어에서 for each 라고 많이 하므로 자바에서도 보통 for each문이라고 말한다.다음은 이전에 공부했던 평범한 for 문장이다.String[] numbers = {"one", "two", "three"}; for(int i=0; i 2017. 4. 1.
리스트 리스트 (List)리스트는 배열의 약점을 보완하기 위해서 만들어진 자바의 내장 자료형이다.배열은 크기가 정해져 있다. 예를 들어 배열의 크기를 10개로 정했다면 10개 이상의 값을 담을 수는 없다.류현진 선수의 투구스피드를 저장해야 한다고 가정해 보자. 배열을 이용하여 투구수를 저장할 수 있을까? 1회에 투구수가 3개도 될 수 있고 100개도 될 수 있지 않은가? 프로그래밍 시 크기를 알 수 있는 상황도 있지만 명확한 크기를 알 수 없는 경우가 더 많다. 이렇게 동적으로 자료형의 갯수가 가변하는 상황이라면 List를 사용하는 것이 유리하다.자바에 내장되어 있는 List 자료형 중 가장 간단한 형태의 자료형인 ArrayList에 대해서 알아보자.add류현진 선수가 총 3번의 투구를 138, 129, 142.. 2017. 3. 31.
배열 배열 (Array)지금까지 우리는 숫자와 문자열에 대해서 알아보았다. 하지만 이러한 것들로 프로그래밍을 하기엔 부족한 점이 많다. 예를 들어 1부터 10까지의 숫자들 중 홀수들의 모임인 1, 3, 5, 7, 9라는 집합을 생각해 보자. 이것들을 숫자나 문자열만으로 표현 하기는 쉽지가 않다. 이러한 불편함을 해소하기 위하여 자바에는 배열이라는 것이 존재한다.1부터 10까지의 숫자들 중 홀수들의 집합은 다음과 같이 int 배열로 표현 할 수 있다.int[] odds = {1, 3, 5, 7, 9}; 배열은 자료형 타입 바로 옆에 [] 기호를 사용하여 표현한다. 위 예제와 같이 int 자료형의 배열은 int[] 로 표현되었다.요일의 집합은 다음과 같이 String 배열로 표현 할 수 있다.String[] we.. 2017. 3. 31.
StringBuffer StringBufferStringBuffer는 문자열을 추가하거나 변경 할 때 주로 사용하는 자료형이다.StringBuffer는 다음과 같이 사용된다.appendTest.javapublic class Test { public static void main(String[] args) { StringBuffer sb = new StringBuffer(); sb.append("hello"); sb.append(" "); sb.append("jump to java"); System.out.println(sb.toString()); } } 결과값은 다음과 같다.hello jump to java StringBuffer 자료형은 append 라는 메소드를 이용하여 계속해서 문자열을 추가해 나갈 수 있다. 그리고 위 .. 2017. 3. 31.
toUpperCase toUpperCasetoUpperCase는 문자열을 모두 대문자로 변경하고자 할 때 사용한다. (모두 소문자로 변경할때는 toLowerCase를 사용하면 된다.)String a = "Hello Java"; System.out.println(a.toUpperCase()); 결과값은 다음과 같다.HELLO JAVA 2017. 3. 31.
substring substringsubstring은 문자열 중 특정 부분을 뽑아낼 경우에 사용한다.다음의 예를 보자.String a = "Hello Java"; System.out.println(a.substring(0, 4)); 결과값은 다음과 같다.Hell 위처럼 substring(시작위치, 끝위치)와 같이 사용하면 문자열의 시작위치에서 끝위치까지의 문자를 뽑아내게 된다. 단 끝위치는 포함이 안된다는 점에 주의하자. 이것은 마치 다음과 같은 수학 등식과 비슷하다.시작위치 2017. 3. 31.
replaceAll replaceAllreplaceAll은 문자열 중 특정 문자를 다른 문자로 바꾸고 싶을 경우에 사용한다.String a = "Hello Java"; System.out.println(a.replaceAll("Java", "World")); 결과값은 다음과 같다.Hello World "Hello Java" 라는 문자열에서 "Java"라는 문자열이 "World"라는 문자열로 바뀌었다. 2017. 3. 31.
indexOf indexOfindexOf는 문자열에서 특정 문자가 시작되는 인덱스를 리턴한다.다음과 같은 문자열을 보자.String a = "Hello Java"; 위와 같은 a라는 문자열에서 "Java"라는 문자열이 시작되는 위치를 알고 싶은 경우에 indexOf를 다음과 같이 사용할 수 있다.System.out.println(a.indexOf("Java")); 결과값은 다음과 같을 것이다.6 "Hello Java" 라는 문자열에서 "Java"라는 문자열은 7번째 문자('J')부터 시작이다. 결과값이 6으로 나온 이유는 자바는 숫자를 0부터 세기 때문이다. 2017. 3. 31.