배열의 복사(copy) 1. 얕은 복사 int [ ] num1 = {10,20,30,40,50}; int [ ] num2; num2 = num1; num1 [0] = 100; system.out.print(num1 [0]); -> 100 system.out.print(num2 [0]); -> 100 -> 10 아님 int [ ] num1 = {10,20,30,40,50}; int [ ] num2; num2 = num1; num1[0] = 100; system.out.print(num1[0]); -> 100 system.out.print(num2[0]); -> 100 객체의 주소 값만 가져와 참조형 변수에 저장하고 하나의 객체를 두 변수가 참조하고 있는 것! 2. 깊은 복사 다른 객체를 생성하여 새로운 객..
이공계전문기술연수
변수는 1개의 데이터만을 저장할 수 있다. 저장할 데이터의 수가 많아지면 많은 변수가 필요하고 코드도 길어진다. 그래서 많은 양의 데이터를 적은 코드로 쉽게 처리할 수 있는 배열에 대해 알아야 한다. 배열 같은 타입의 데이터를 연속된 공간에 나열하고, 각각의 데이터에 인덱스(index)를 부여해 놓은 자료구조이다. 예를 들어 student라는 배열이 있다고 하자. student[] B C E F H K L R T 인덱스 0 1 2 3 4 5 6 7 8 각 인덱스(index)는 각 항목의 데이터를 읽거나 저장하는 데 사용되며 배열의 이름 옆에 대괄호[ ]에 기입이 된다. 인덱스는 0부터 시작한다. student [0]은 B이고 student [5]는 K이다. 배열의 특징 1. 배열은 같은 타입의 데이터만 ..
데이터 타입(data typte) 기본타입(primitive type) 참조타입 정수타입 byte char short int long 배열타입 열거타입 클래스 인터페이스 실수타입 float double 논리타입 boolean 기본 타입과 참조 타입 기본타입 : byte, char, short, int, long, float, double boolean 변수는 실제 값을 변수 안에 저장한다. 참조타입 : 배열, 열거, 클래스, 인터페이스 변수는 메모리의 번지를 변수 안에 저장한다. 번지를 통해 객체를 참조한다는 뜻에서 참조 타입 이라고 한다. 메모리 사용 영역 JVM(JAVA Virtual Machine) 메소드 영역(Method Area) JVM이 시작할 때 생성되고 모든 스레드가 공유하는 영역 사용되는..
for문은 정해진 횟수만큼 반복을 한다고 생각할 수 있다. while문은 조건식이 true일 경우에 계속해서 반복을 한다. 조건식에는 비교 또는 논리 연산식이 주로 오게 되는데 조건식이 flase가 되면 반복 행위를 멈추고 while문을 종료한다. // 사용자가 원하는 만큼 명령들을 여러번 실해하는 제어문 // 특정 조건이 만족되는 동안 명령을 계속적으로 실행 // for(초기; 조건; 증감){ //실행코드; //} // while(조건문){ //실행코드; //} // ex ) int i = 0; // while(i < 5) { //system.out.println("Hi"); //i++; //} while문 코드의 흐름이다. 실습문제 (1) public void whileTest() { int i = ..
반복문은 코드가 반복적으로 실행되도록 할 때 사용되며, 반복문의 종류로는 for문, while문, do-while문이 있다. for문은 반복 횟수를 알고 있을 때 주로 사용하고, while문은 조건에 따라 반복할 때 주로 사용한다. while문과 do-wile문의 차이점은 조건을 먼저 검사하느냐 나중에 검사하느냐의 차이일 뿐 나머지는 같다. // 1. for문 (단일 for문) // for (초기식 ; 조건식 ; 증감식) { // 실행 코드; // } // 1회전(첫회전 시) // 초기식 - > 조건식 확인 - > (조건식이 true일 때) 실행코드 실행 - > 증감식 수행 // 2회전 이후 // 조건식 확인 - > (조건식이 true 일 때) 실행코드 실행 -> 증감식 수행 // 조건식 결과 false..
switch도 if문과 마찬가지로 조건 제어문이다. 다만 if 문과의 차이점은 if문은 조건의 범위를 지정할 수 있었다. 하지만 switch문은 확실한 값의 조건(변수)이여야 된다. switch문은 변수의 값에 따라서 실행문이 결정되기 때문에 같은 기능의 if문보다 코드가 간결하다. switch문 switch(동등 비교할 대상자) { case 값1 : 실행코드 1; break; case 값2 : 실행코드 2; break; .. default : 실행코드3; } 비교할 대상자 == 값1, 실행코드 1을 실행하고 break를 받아 빠져나온다. 1) 연습문제(1) public void method1() { // 1~3 사이의 정수를 입력받아 1인경우 "빨간색입니다" 2인경우 "파란색입니다" 3인경우 "초록색입..
프로그램의 진행은 순차적으로 진행된다. 하지만 이 순차적 흐름을 바꿀 때, "제어문"이라는 걸 이용한다. 조건식을 통해 참이냐 거짓이냐를 판단해서 해당 조건이 만족하는 경우 그에 해당하는 실행문을 실행한다. (삼항 연산자도 조건문) 조건문은 크게 if 문이랑 switch문으로 나뉜다. if문의 종류 3가지 1) 단독 if문 2) if else 문 3) if else if 문 조건식의 결과 값이 true(참)이면 중괄호({}) 안의 코드를 실행한다. 조건식의 결과 값이 false(거짓)이면 코드를 무시하고 넘어간다. 1) 단독 if문 package com.kh.control01.condition; import java.util.Scanner; public class A_If { public void met..
프로그램 데이터를 처리하여 결과를 산출하는 것을 연산이라고 한다. 산술 연산자일 경우는 숫자 타입(byte, short, int, long, float, double)으로 결괏값이 나오고, 비교 연산자와 논리 연산자는 논리 타입(boolean)으로 결괏값이 나온다. 1. 연산자 종류 연산자 종류 연산자 피연산자 수 산출값 기능 산술 +, -, *, /, % 이항 숫자 사칙연산 나머지 계산 부호 +, - 단항 숫자 음수와 양수의 부호 문자열 + 이항 문자열 두 문자열을 연결 대입 =, +=, -=, *=, /=, %= 이항 다양 우변의 값을 좌변의 변수에 대입 증감 ++ , -- 비교 ==, !=, >, 197 + 99 -> 296 System.out.println(x); y = y-- + y + ++y;..