본문 바로가기

JAVA/기본 이론9

4. 입/출력 (Input/Output, I/O) 프로젝트 진행 중이라 글을 작성하지 못하고 있었네요. 다시 블로그 글 열심히 작성해보겠습니다. 앞서 확인해보니 입/출력에 대해 빼뜨려먹어서 지금 작성합니다. 입/출력이란? 자바에서 입/출력이란 우리가 알고 있는 느낌 그대로. 우리가 지금 포스트 글 또는 댓글과 같이 텍스트 박스에 글을 작성하면 화면에 보이는 것. 키보드를 이용해서 글을 작성하는 행위가 입력이고 작성된 글이 화면에 보이는 것이 출력이다. 자바에서 출력하는 방법 public class Main { public static void main(String[] args){ System.out.println("Hello World!"); } } 기본적으로 자바를 시작하게 되면 Intelli J와 Eclipse같은 IDE에서 제공하는 문법이다. 자바.. 2024. 2. 24.
9. 반복문 - while 문, do while 문 while 문 이란? while문도 for문과 마찬가지로 ~동안 이라는 뜻을 가지고 있는 반복문입니다. 이전 포스트에서 for문에서 ~동안을 의미하는 곳이 조건식이라고 설명했습니다. while문도 마찬가지로 '조건식' 동안 반복을 하겠다는 의미가 됩니다. 조금 더 자세히 알기 위해서 for문의 수행 과정을 복습해보겠습니다. 첫 번째 수행 (초기값), 먼저, '초기값'에 들어가는 내용은 0개 이상 작성하면 됩니다. 초기값을 설정하지 않아도 수행되는 것이죠. 저는 3개의 변수 i, j, cnt를 초기값으로 특정 값을 할당 했습니다. 두 번째 수행 (조건식), 조건동안 for문을 수행할 수 있는지 확인합니다. 조건은 i < j 이므로, (i : 10) < (j : 20) 를 만족합니다. 두 번째 수행에서 조건.. 2024. 2. 10.
8. 반복문 - for 문 반복문이란? 프로그래밍 언어에서 반복문이란 말 그대로 반복하는 과정을 수행할 수 있는 문법을 뜻한다. 반복문에는 잘 알려진 for문과 while문이 존재한다. 추가로 do while문도 존재하는데 아직 까지는 특별한 경우를 제외하고는 사용을 하지 않았다. for문 for문은 기본적인 문법으로 대부분의 사람이 잘 알고 있다. 하지만, 생각보다 헷갈려하는 포인트들이 있어서 그것을 짚기 위해서 가져왔다. 우선, 웬만한 책에서 설명하는 for문의 기본 구성은 아래와 같다. for (int i = 0; i < 10; i++) {} 대부분 여기서 int i = 0 을 초기값, i < 10을 조건식, i++을 증감식이라고 표현합니다. for (초기값; 조건식; 증감식) 근데 저는 헷갈리던 부분이 좀 있었습니다. 맨 .. 2024. 2. 10.
7. 다차원 배열 (Multi Dimensional Array) 2차원 배열이란? 우리는 2차원 배열에 익숙하다. 지금 이 글을 보는 화면도 x by y의 해상도를 가진 2차원 배열이다. 2차원 배열의 경우, 1차원 배열이랑 다를게 없어서 솔직히 뭘 써야 할 지 모르겠다. 조금만 생각을 바꾸면 되는게 2차원 배열이라서... 1차원 배열이 배열 형태를 띠는 것이 2차원 배열입니다. 어떻게 봐야할까요? 변수 큐브를 생각해봅시다. 우리 눈에는 3차원으로 보이는 해당 큐브는 한 블럭이 단위입니다. 컴퓨터에서도 똑같이 int cube 라고 하면 저 한 블럭은 int 정보를 갖게 되는 것이에요. 선형 배열 (1차원 배열) 그럼 배열은? 지갑을 설명했듯, 큐브에서도 보일 수 있는데요. 같은 '단위'를 기준으로 크기를 가진 것이 배열인데요. 해당 사진에서는 block이 3개 있다는.. 2024. 2. 10.
6. 배열 (Array) 블로그 글을 열심히 써보려고 했지만, 최근에 생각을 정리하는 시간을 많이 갖게 되었습니다. 결국 블로그 글을 작성하는 것이 옳다고 생각했고. 글을 주로 쓰려고 합니다. 다만, 제 생각을 정리하고 기본을 다시 채우는 느낌의 블로그라서 공부의 지침서가 될 지는 모르겠습니다. 몇 번씩, 방문하면서 제 글을 읽어주시는 분들께 감사합니다! 배열이란 무엇일까? 배열은 자료구조 관점에서 보면 상당한데요. 현재 글의 카테고리는 Java의 기본이론이므로 단순하게만 보도록 하겠습니다! 현실과 빗대어 생각해보자. 숫자가 `1, 2, 3, 4`의 형태를 띠고 있으면 우리는 '수가 나열되어 있다.' 라고 하죠? 글자가 `ㅈ, ㅣ, ㄱ, ㅏ, ㅂ`의 형태를 띠고 있을 때, 올바른 글자로 '배열'해 보세요. 라고도 하죠? 올바르게.. 2024. 2. 10.
5. 연산자(Operator)와 연산 순위 연산자란 ? 우리는 연산자에 대해 이미 알고 있습니다. +, -, *, / 와 같은 연산 기호를 의미하는데요. 프로그래밍 언어에서는 사칙 연산 외에도 다양한 연산자가 있습니다. 사칙연산 + 나머지 연산 public class Main { public static void main(String[] args) { int a = 18, b = 4; System.out.printf("a + b = %d\n", a + b); System.out.printf("a - b = %d\n", a - b); System.out.printf("a * b = %d\n", a * b); System.out.printf("a / b = %d\n", a / b); System.out.printf("a %% b = %d\n", a .. 2024. 2. 10.
3. 자료형(DataType) 이전 포스트에서 변수를 설명했습니다. 자료형이란 변수에 값을 할당할 때, 어떤 값을 할당할 것인지? 미리 알려주는 것입니다. 변수 포스트를 잘 생각해 봅시다. 1. a = 10을 작성하고 바로 다음에 a = 22억이라고 작성해 봅시다. 2. Symbol Table에서 a의 주소가 0x0004라고 가정을 합시다. 3. 0x0008 주소에 이미 다른 값이 있다고 가정합시다. 4. 0x0004에 10을 저장할 때는 아무 문제가 없습니다. 5. 0x0004에 22억을 저장할 때는 문제가 발생합니다. 이유가 뭘까요? 컴퓨터에서 기본적인 정수는 4byte(32bit, 대략 21억)까지 표현을 하고 공간을 차지합니다. a라는 변수가 0x0004, 0x0005, 0x0006, 0x0007의 공간을 차지하는 것이죠. 그.. 2024. 1. 2.
2. 변수(Variable)와 할당(Assign) 변수란 무엇일까요? 수학적으로 봤을 때, 미지수라고 볼 수 있습니다. 수학에서는 주로 x, y와 같은 미지수를 사용하지만 컴퓨터에서는 몇 몇 표현을 제외한 모든 표현이 미지수가 될 수 있습니다. 내이름, myName, myNickName, myNickName2, Hi, ... 다만 피해야할 것이 있습니다. 첫 문자는 '_', '$', '문자'로 시작해야한다. 예약어는 피해야한다. 공백을 포함하지 않는다. 위 내용들이 변수에 대한 기본 틀입니다. 별거 없다고 생각하실 수 있지만, 더 중요한 내용은 지금부터 시작입니다. 앞서, 수학적인 관점에서 변수를 미지수로 생각할 수 있다고 했지만 엄밀히 말하자면 변수 ≠ 미지수 입니다. 미지수는 x = 10 이라는 의미가 x는 10이다. 라고 해석할 수 있죠? 변수는 .. 2024. 1. 2.
1. 자바 시작하기 Java를 사용하려면 Java를 사용할 수 있는 환경이 되어야한다. Java를 사용할 수 있는 환경이란? C, C++과 같은 C기반 언어의 경우 기본적인 명령은 이미 우리 PC에 설치되어 있다. 그 이유는 대부분 운영체제(OS)는 C언어 기반이기 때문에 운영체제를 설치 할 때, C가 자동으로 설치되는 것이다. 이렇게 C언어에 대한 환경이 Default이므로 Java 언어를 사용할 수 있는 환경을 설치해주어야 한다는 것이다. CMD or PowerShell을 사용하면 우리 운영체제에서 C언어를 사용할 수 있는 환경이란 것을 알 수 있다. Java 환경 설치 1. JDK(Java Development Kit) : 자바 개발 도구를 설치한다. 자바를 개발할 수 있게 해주는 도구로써 JDK를 설치하여야만 Jav.. 2024. 1. 2.