Java(6)
-
프로그래머스 코딩테스트 연습 level1 크레인 인형뽑기게임
게임 화면은 "1 x 1" 크기의 칸들로 이루어진 "N x N" 크기의 정사각 격자이며 위쪽에는 크레인이 있고 오른쪽에는 바구니가 있습니다. (위 그림은 "5 x 5" 크기의 예시입니다). 각 격자 칸에는 다양한 인형이 들어 있으며 인형이 없는 칸은 빈칸입니다. 모든 인형은 "1 x 1" 크기의 격자 한 칸을 차지하며 격자의 가장 아래 칸부터 차곡차곡 쌓여 있습니다. 게임 사용자는 크레인을 좌우로 움직여서 멈춘 위치에서 가장 위에 있는 인형을 집어 올릴 수 있습니다. 집어 올린 인형은 바구니에 쌓이게 되는 데, 이때 바구니의 가장 아래 칸부터 인형이 순서대로 쌓이게 됩니다. 만약 같은 모양의 인형 두 개가 바구니에 연속해서 쌓이게 되면 두 인형은 터뜨려지면서 바구니에서 사라지게 됩니다 크레인 작동 시 인..
2021.04.02 -
ch. 5 참조타입 - 배열 타입
5.6 배열 타입 변수는 한 개의 데이터만 저장할 수 있음 저장할 데이터가 많아지면 그때마다 모두 선언해야함 배열은 인덱스 번호가 붙은 변수들의 집합 인덱스와 인덱스에 대응하는 데이터들로 이루어진 구조 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 import java...
2021.03.17 -
ch. 5 참조타입
5.1 데이터 타입 분류 기본타입 참조타입 배열 열거타입 클래스 인터페이스 기본 타입은 변수에 실제 값을 저장 참조 타입은 배열, 열거, 클래스, 인터페이스를 이용 선언된 변수는 메모리의 주소를 값으로 저장 5.2 메모리 사용영역 메소드 영역 메소드 영역에서는 코드에서 사용되는 클래스들을 클래스 로더를 통하여 읽어들인다. 클래스별 런타임 상수풀, 필드 데이터, 메소드 데이터, 메소드 코드, 생성자 코드 등을 분류하여 저장. 메소드 영역은 JVM이 시작할 때 생성되며, 모든 스레드가 공유한다. 힙 영역 힙 영역은 객체, 배열이 생성되는 부분 힙 영역에 객체와 배열이 생성되면, JVM 스택 영역의 변수나 다른 객체의 필드에서 참조할 수 있다. 참조하지 않으면, garbage collector를 실행시켜 ..
2021.03.17 -
ch. 4 조건문과 반복문
1. 프로그래머스 코딩테스트 연습문제 1.1 키패드 누르기 반복문 for, 조건문 if(else if), switch 사용 맨 처음 왼손 엄지손가락은 * 키패드에 오른손 엄지손가락은 # 키패드 위치에서 시작하며, 엄지손가락을 사용하는 규칙은 다음과 같습니다. 엄지손가락은 상하좌우 4가지 방향으로만 이동할 수 있으며 키패드 이동 한 칸은 거리로 1에 해당합니다. 왼쪽 열의 3개의 숫자 1, 4, 7을 입력할 때는 왼손 엄지손가락을 사용합니다. 오른쪽 열의 3개의 숫자 3, 6, 9를 입력할 때는 오른손 엄지손가락을 사용합니다. 가운데 열의 4개의 숫자 2, 5, 8, 0을 입력할 때는 두 엄지손가락의 현재 키패드의 위치에서 더 가까운 엄지손가락을 사용합니다. 4-1. 만약 두 엄지손가락의 거리가 같다면, ..
2021.03.11 -
Ch.2 변수와 타입
2.1 변수 2.1.1 변수란? 변수란, 하나의 값을 저장할 수 있는 메모리 공간이다. 2.1.2 변수선언 타입 + 변수이름;' 한꺼번에 여러개 선언가능 int x,y,z; 첫문자는 소문자로 시작하되, 다른단어가 붙을 경우 첫 글자는 대문자 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 public class VariableTest1 { static int speed; static double speed2; //main이 없으면 직접실행 불가 public static void main(String[] args) { System.out.println("sp..
2021.03.08 -
Ch.1 java 시작하기
1.1 프로그램 언어란? 컴퓨터가 이해할 수 있는 언어는 기계어. 0과 1로 이루어진 2진 코드이기 사람이 이해하기에는 매우 어렵다. 반면, 사람이 사용하는 언어는 컴퓨터 입장에서 보면 이해할 수 없는 문자 집합 사람과 컴퓨터가 대화하기 위해서는 다리 역할을 하는 프로그래밍 언어가 필요 프로그래밍 언어 저급언어 : 기계어에 가까운 언어 고급언어 : 사람이 쉽게 이해할 수 있는 언어 (C, C++, Java 등) 언어들로 작성된 내용을 소스라고 부름 소스는 컴파일러라는 소프트웨어에 의해 기계어로 번역된 후 컴퓨터에서 실행 프로그램이란 컴퓨터에서 특정 목적을 수행하기 위해 프로그래밍 언어로 작성된 소스를 기계어로 번역한 것 1.2 자바란? 1.2.1 자바소개 1991년에 썬의 엔지니어들에 의해서 고안된 오크..
2021.03.08