2차원배열 2차원 배열 2차원 배열이란 배열의 배열이다. 2차원 배열 생성 방법 정수를 4개씩 담을 수 있는 배열이 3개 생성된다. int[][] array4 = new int[3][4]; 2차원 배열에 값을 저장하는 방법 만약 array4[1] = 10 ; 이렇게 사용하면 오류!! array4[1] 은 또 다른 1차원 배열을 가리킬 수 있는 참조형 변수이기 때문에 값을 담을수는 없다. array4[0][0] = 10; 가변크기의 2차원 배열을 생성하는 방법 int[][] array5 = new int[3][]; //위와 같이 선언하면 array5는 3개짜리 배열을 참조한다. 3개짜리 배열은 아직 참조하는 배열이 없다는 것을 의미. array5[0] = new int[1]; //정수를 하나 담을 수 있는..
배열 사용하기 for 반복문을 이용해서 배열 사용하기 배열에 접근할때에는 인덱스를 통해서 접근한다. int[] iarray = new int[100]; iarray[0] = 1; iarray[1] = 2; 배열에 0번째 인덱스 부터 시작해서 1부터 100까지 넣기 정수를100개 저장 할 수 있는 배열을 생성 int [] iarray = new int[100]; 배열의 길이를 알아내는 방법 iarray.length //배열을 참조하는 레퍼런스 변수.length 하면 해당 배열의 길이를 리턴한다. 배열에 1부터 100까지 값넣기 //배열에 값을 반복적으로 넣어야 하므로, for 반복문을 이용한다. for(int i = 0; i < iarray.length; i++){ //배열의 인덱스는 0부터 시작하므로, ..
배열 만들기 1차원 배열 배열은 같은 데이터 타입을 가진 연속된 메모리 공간으로 이루어진 자료구조이다. 같은 데이터 타입을 가진 여러개의 변수가 필요할 때 사용한다. 배열 생성 방법 정수를 4개 저장 할 수 있는 배열을 생성 하는 방법 int[] array1 = new int[4]; 배열에 값을 저장하는 방법 array1[0] = 1; array1[1] = 2; array1[2] = 3; array1[3] = 4; //자바에서 배열의 인덱스는 0번 부터 사용한다. 4개짜리 배열은 0부터 3까지의 인덱스를 가지게 된다. //배열인덱스 0번부터 3번까지 차례로 1,2,3,4 값을 저장한다. 배열에 저장된 값을 꺼내서 사용하는 방법 int value = array1[2]; //array1 이 참조하는 배열의 ..
this this this는 현재 객체, 자기 자신을 나타낸다. this 의 사용 public class Car{ String name; int number; public Car(String n){ name = n; } } Car클래스의 생성자 매개변수의 이름이 n 이다. n 이라는 변수명은 무엇을 의미하는지 쉽기 알수 없다. n 으로 쓰기 보다는 name 으로 사용하는 것이 좋다. public Car(String name){ name = name; } 'name=name' 이라고 코드를 바꾸면, 가깝게 선언된 변수를 우선 사용하기 때문에 'name=name'이라는 코드는 매개변수의 name의 값을 매개변수 name에 대입하라는 의미가 된다. 즉, 필드는 바뀌지 않습니다. 이런 경우 필드라는 것을 컴파일..
생성자 생성자 선언 Public class 클래스명{ 타입 필드명; public 클래스명(매개 변수 목록) { //생성자 블록(리턴타입X) ... } public 리턴 타입 메소드명 (매개변수 목록) { //메소드 블록 .... } } 모든 클래스는 인스턴스화 될때 생성자를 사용한다. 생성자의 특징 생성자는 리턴타입이 없다. 생성자를 프로그래머가 만들지 않으면 매개변수가 없는 생성자가 컴파일할 때 자동으로 만들어진다. 매개변수가 없는 생성자를 기본생성자라고 한다. 생성자를 하나라도 프로그래머가 만들었다면 기본생성자는 자동으로 만들어지지 않는다. 생성자의 역할 생성자가 하는 일은 객체가 될 때 필드를 초기화 하는 역할을 수행한다. 자동차가 객체가 될때 반드시 이름을 가지도록 하려면,Car클래스를 다음과 같..
String클래스의 메소드 String Class가 제공하는 메소드 이용하기 문자열 길이 구하기 str.length()는 str이 참조하는 문자열의 길이를 구해서 int 타입으로 리턴해주는 메소드 이다. System.out.println(str.length()); //str 문자열 붙히기 (concat) str.concat("world") 메소드는 str 이 참조하는 문자열 hello 에다가 메소드의 인자로 들어온 문자열 world 를 붙혀서 String 타입으로 리턴하는 메소드다. String Class는 불변 클래스로, 메소드가 수행되면, 새로운 문자열을 만든다. 그러므로, 원래 클래스는 변하지 않는다. String str = new String("hello"); System.out.println(s..
메소드 사용해보기 메소드의 사용 MyClass public class MyClass{ public void method(){ System.out.println("method1이 실행됩니다."); } public void method2(int x){ System.out.println(x + " 를 이용하는 method2입니다."); } public int method3(){ System.out.println("method3이 실행됩니다."); return 10; } public void method4(int x, int y){ System.out.println(x + "," + y + " 를 이용하는 method4입니다."); } public int method5(int y){ System.out.prin..
메소드(Method) 선언 다양한 형태의 메소드 매개변수도 없고 리턴하는 것도 없는 형태의 메소드 리턴하는 것이 없을 경우 void라고 작성한다. public class MyClass{ public void method1(){ System.out.println("method1이 실행됩니다."); } } 정수를 받아들인 후, 리턴하지 않는 메소드 받아들이는 값은 어떤 타입이라도 상관없다. 받아 들이는 값의 수는 여러개 일 수 있다. 여러개을 경우 콤마(,)로 구분한다. public class MyClass{ public void method2(int x){ System.out.println(x + " 를 이용하는 method2입니다."); } } 이번엔 정수를 받아들인 후, 리턴하지 않는 메소드입니다. 이..