본문 바로가기

전체 글

(21)
Array 실습 두번째 1. length로 평균 구하기 package p01.basic; public class ArrayBasic6 { public static void main(String[] args) { int[] scores = {95, 71, 84, 93, 87}; // 배열 초기값을 넣을 때 length에도 전체 갯수를 설정 int sum = 0; for (int score : scores) { sum += score; } double average = (double) sum / scores.length; System.out.println("전체 합계 : " + sum); System.out.println("전체 평균 : " + average); } } 배열도 length를 이용하여 배열의 갯수를 알 수 있습니다...
Array 실습 첫번째 1. Array 실습 1 package p01.basic; // 1. 배열 (array) : 특정 type의 원소가 연속적으로 메모리에 할당된 data type을 의미 // 2. int[] arr => // 1) int[] : 배열 type (배열 원소의 data type이 int인 array) // 2) arr => 변수 이름 // 3. {10, 60, 30, 40} => 배열 초기값, 각각의 데이터를 배열 원소의 데이터값으로 설정한다는 의미 // 4. arr[index] => index가 0인 경우는 첫번째 배열 원소, 1인 경우는 두번째 배열 원소,.... public class ArrayBasic { public static void main(String[] args) { // 1. 배열 선언하면..
Method 실습 1. sum method package p01.basic; // sum method 구현 // 1. method 선언 // - 프로그램에서 여러번 반복 사용되는 특정 코드 덩어리를 별도의 method로 정의 // 2. method 사용 // - 선언된 method 이름을 통해 method를 사용 // 3. method 사용 효과 // - 전체 소스코드 양이 대폭 줄일 수 있고, 프로그램 내에서 중복되는 코드 덩어리 제거 가능 // - 중복되는 코드 덩어리 수정할 경우, 메소드 내부에서만 수정하면 되어서 전체 코딩 속도 향상 가능 // 4. 회원가입 여부 check, 쇼핑물 상품 가격이 1000원 이상인 경우, 상품가격 입력시 상품가격 체크 등... public class MethodBasic2 { pub..
String 실습 두번째 1. 문자열 내용 비교하기 (.equals()) package p01.basic; // 문자열 내용 (contents) 비교하기 : s1.equals(s2) // - equals의 return값이 true이면 s1과 s2의 문자열 내용이 동일하다는 의미, false이면 동일하지 않음 // - toLowerCase()나 toUpperCase()로 변환하여 equals 사용하는 것이 의미 있는 경우도 많음 public class StringBasic6 { public static void main(String[] args) { String s1 = "Welcome to Java"; String s2 = "Welcome to Java"; String s3 = "welcome to java"; if (s1.eq..
String 실습 첫번째 1. String 예제 1번 package p01.basic; // String data type // 1. 메모리에서 사용하는 데이터 크기가 가변적인 것이 특징임 // -> 실제 데이터를 힙메모리에 저장하고, String Type으로 선언된 변수에는 힙메모리의 주소값을 갖고 있음 // 예를 들면, String message = "안녕하세요, 자바씨~~"; 인 경우, // 변수 message에는 힙메모리에 저장된 "안녕하세요, 자바씨~~" 데이터의 시작 주소값을 갖고 있다는 의미임 // 2. 실제 사용 예 : 고객이름, 주소, 직업, 회사명, 상품명,.... // 3. 산술연산 기호 중에서 +만 사용 가능 => 문자열 합치기 // - 문자열 + 문자열 (ok), 숫자 + 문자열 (ok), 문자열 + 숫자..
참조 타입 3번째 ◎ 다차원 배열 2차원 배열 이상의 배열 (수학의 행렬과 같은 자료 구조) 자바는 1차원 배열을 이용해 2차원 배열 구현 ◎ 2차원 배열 선언 2차원 배열 선언 int[][] intArray; char[][] charArray; float[][] floatArray; 2차원 배열 생성 intintArray[] = new int[2][5]; charcharArray[] = new char[5][5]; floatfloatArray[] = new float[5][2]; 2차원 배열 선언, 생성, 초기화 int intArray[][] = {{0,1,2}, {3,4,5}, {6,7,8}}; char charArray[][] = {{'a','b','c'}, {'d','e','f'}}; float ◎ 2차원 배열의 ..
참조 타입 2번째 - 배열 타입 ◎ 배열의 필요성 학급 학생별 수학 성적을 관리하는 변수 생성 방법은?? ◎ 배열이란? 같은 타입의 데이터를 연속된 공간에서 저장하는 자료구조 각 데이터 저장 위치는 인덱스 부여해 접근 ◎ 배열의 장점 중복된 변수 선언 줄이기 위해 사용 반복문 이용해 요소들을 쉽게 처리 ◎ 배열 선언 - 배열을 사용하기 위해 우선 배열 변수 선언 타입 : 배열 원소의 데이터 타입 (모든 배열원소의 데이터 타입은 동일) 배열 변수는 참조 변수 - 배열 생성되기 전 null로 초기화 가능 타입[] 변수 = null; 배열 변수가 null 값을 가진 상태에서 항목에 접근 불가 - 변수[인덱스]" 못함 => NullPointerException 발생 ◎ 값 목록으로 배열 생성하는 방법 변수 선언과 동시에 값 목록..
참조 타입 1번째 메소드(Method) Method 사용 Flow(흐름도) - Activation Record (Activation Framework) method를 호출할 때 마다 JVM이 메모리에서 stack 영역에 생성하는 정보 (메소드에서 선언한 변수 전체 정보) Stack 영역을 call stack, execution stack, runtime stack, machine stack 등으로 부름 Stack 의미 : LIFO(Last In First Out) 1) 나중에 입력된 것을 맨 처음으로 읽음(삭제) 2) Method내 선언된 변수들 중 마지막에 선언된 변수가 stack 상단에 위치 - JVM S/W 실행순서 JVM SW가 메인 메모리에 올라감 JVM이 실행할 class files들을 기계어로 번역 후 메모리..