연산을 누적할 변수 선언 및 초기화 배열 생성 및 데이터 저장 for문을 사용하여 배열 내의 모든 인덱스에 차례대로 접근 => 배열의 인덱스 번호를 제어변수로 지정하여 해당 배열 내의 데이터를 누적 변수에 누적 for문 종료 후 누적 변수 값 사용 0. 연산을 누적할 누적변수(int형 변수 total) 선언 및 초기화 int total=0; 1. 정수형 데이터 1~10까지를 저장하는 배열 arr 생성 int[] arr = {1,2,3,4,5,6,7,8,9,10}; 2. for문을 사용하여 배열 내의 모든 인덱스에 차례대로 접근 for(int i=0; i 이때, 각 인덱스 데이터가 홀, 짝일때 각각의 변수에 누적 for(int i=0;i 따라서, 0대신 배열의 첫번째 데이터를 초기값으로 갖고 비교 int[..
JAVA
배열선언, 생성, 초기화를 한번에 수행하는 문법 데이터타입[] 변수명 = {데이터1, 데이터2,...,데이터n}; => 배열 생성 문법을 별도로 명시하지 않고 중괄호를 사용하여 초기화할 데이터를 리터럴 형태로 전달하면 해당 데이터 개수만큼 배열 공간이 자동으로 생성됨 => n개 만큼의 공간을 생성하면서 인덱스 번호가 0 ~ n-1까지 부여되고 자동으로 기본값으로 초기화됨 위의 문장들을 하나로 결합하여 리터럴로 즉시 초기화까지 수행 int[] arr = {1,2,3,4,5}; // 배열 arr의 모든 요소 출력 for(int i=0;i 주의! 5개의 리터럴 저장 시 5개 데이터 저장 공간만 생성되므로 추가적인 데이터 저장은 불가능 int형 배열 arr2를 먼저 선언한 후 별도로 정수형 리터럴 1,2,3,4..
배열(array) : 같은 타입 데이터 여러 개를 하나의 묶음(변수)으로 다루는 메모리 공간 배열의 특징 같은 타입 데이터만 저장 가능 여러 변수에 해당하는 메모리 공간이 연속된 공간에 차례대로 생성됨 => 한 번 생성된 배열은 크기 변경 불가능 기본 데이터타입과 참조 데이터타입 모두 배열로 사용 가능 배열은 선언, 생성, 초기화의 3단계 과정을 거쳐서 사용 배열 생성 시 각 공간에 해당하는 인덱스(번호)가 자동으로 부여됨 => 0부터 시작하여, 배열크기 -1까지 부여됨 배열이 생성될 경우 배열의 데이터 저장 공간은 배열의 데이터타입에 해당하는 기본값으로 자동으로 초기화 (byte, short, int = 0, long = 0L, float = 0.0f, double = 0/0 char = 0 또는 '\..
생성자(constructor) 클래스를 사용하여 인스턴스를 생성할 때 호출되는 메서드 형태 => new 키워드 뒤에 생성자 호출 코드가 기술됨 주로 인스턴스 변수를 초기화하는 용도 또는 인스턴스 생성 시 초기에 수행할 작업을 기술하는 용도 메서드 형태와 유사하나 차이점 두 가지 존재 선언부에 리턴타입이 없음 (리턴값이 없는 것이 아니라 리턴타입 자체를 기술하지 않음) 생성자 이름 = 클래스 이름 개발자가 클래스 정의 시 생성자를 하나도 정의하지 않으면 컴파일러에 의해 자동으로 기본(Default) 생성자가 생성됨 메서드와 유사한 형태이므로 파라미터가 있을수도 있고, 없을수도 있다. 생성자를 별도로 호출할 수 없으며, 반드시 new 키워드 뒤에만 지정할 수 있음 생성자 정의 기본 문법 [접근제한자] 클래스..
동일한 이름의 파라미터가 다른 메서드를 여러번 정의하는 것 비슷한 기능을 수행하지만, 전달받은 데이터 타입이 다른 경우 메서드 이름을 각각 따로 정의하지 않고, 동일한 이름으로 파라미터만으로 구분되는 메서드를 여러 개 정의하는 것 주의사항! 메서드 시그니쳐(이름, 리턴타입, 파라미터, 접근제한자) 파라미터를 제외한 나머지는 동일하게 정의함 => 외부에서 메서드를 호출하는 시점에 이름이 동일한 메서드 간에 전달되는 데이터(파라미터값) 만으로 각 메서드가 구분되어야 함 메서드 오버로딩 규칙(택1) 메서드 파라미터의 데이터타입이 달라야함 메서드 파라미터의 개수가 달라야함 NormalMethod nm = new NormalMethod(); nm.addInt(10, 20); // (int, int) nm.addD..
접근제한자 클래스, 메서드, 멤버변수 등의 접근 제한 용도로 사용하는 키워드 (넓은) public > protected > default > private (좁음) => 단, default 접근제한자는 별도의 키워드 없이 생략하면 적용 private 접근제한자 외부 클래스에서 접근하지 못하며, 자신의 클래스 내에서만 접근 가능 주로 외부에서 접근하지 못하도록 멤버변수에 적용 자신의 클래스 내에서 private 멤버변수 값에 접근하여 멤버변수의 값을 변경하거나 리턴하는 역할의 메서드를 정의하여 제공 public 접근제한자 누구나 접근 가능 주로 외부에서 접근하는 메서드에 적용 Getter / Setter 메서드 클래스 내에서 private 접근제한자로 선언된 멤버변수 등에 접근을 위해 클래스 내에서 제공하..
객체지향 절차지향 프로그래밍 코드의 처음부터 마지막까지 위에서부터 아래로 명령이 수행되는 형태 특정한 코드가 반복되어 수행된다면 프로그램이 커질뿐 아니라 변경이 되면 모든 부분을 수정해야하는 일이 발생! 객체지향 프로그래밍 프로그램은 여러 가지 변수와 명령어를 통해 다양한 동작들을 수행 프로그램이 커짐에 따라 프로그래밍을 하는 입장에서는 좀 더 효율적인 방법의 프로그래밍이 필요하게 되었음! 프로그램 내에서 사용되는 연관성이 있는 변수들과 동작(메서드)들을 모아 하나의 개념으로 만들었는데 이를 클래스 라고함!! 클래스는 현실세계의 설계도라고 할 수 있으며, 이를 통해 객체를 생성하게 됨 객체 지향 프로그래밍(OOP : Object-Oriented Programming)은 연관된 속성과 동작을 클래스 형태로..
break문과 continue문 반복문 내에서 특정 조건식과 결합하여 반복문의 실행 흐름을 제어하는 용도로 사용 break문과 continue문 반복문 내에서 조건식에 따라 반복문을 종료하는 용도로 사용 주로 if문과 조합하여 반복문을 빠져나갈 조건을 설정 for(초기식; 조건식; 증감식) 또는 while(조건식) { if(조건) { break; // 현재 소속된 반복문의 블록문을 빠져나감(종료) } } for문에서 break문 int i; for(i=1; i=100) { break; } 증감식을 생략한 형태의 for문 for(; total=100) { break; } x++; //for문 내에서 제어변수의 값을 증가할 경우 증감식 생략 가능 } 모든 요소를 생략한 형태의 for문 for( ; ; ) {..