본문 바로가기
에밀리쌤의 기초교실/JAVA 프로그래밍

[에밀리쌤의 JAVA 기초] 자료형

by 에밀리쌤 2024. 4. 16.

자바교육에서 사용되는 자바 기초 프로그래밍의 교안을 바탕으로 한 추가 설명입니다.

이전에 작성된 변수에 이은 자료형에 대한 설명입니다.

 

 

[에밀리쌤의 JAVA 기초] 변수

자바 기초 프로그래밍의 교안을 바탕으로 한 추가 설명입니다. 변수는 프로그램을 배운다고 했을 때 가장 먼저 알아야 하는 기본 개념입니다. 값이 변하는 수이기 때문에 변수(變數) 라고 하는

classroom.emilylecture.com

 

 

변수를 정의할 때 변수 이름 앞에 자료형을 정의해야 한다. 라는 설명을 이전에 드렸는데요.

위 교안에 정리되어있는 내용은 자바가 기본적으로 제공하는 기본 자료형(원시자료형, Primitive type)의 종류입니다.

위에 정의된 구성대로 자료형을 선언해주고 변수이름을 작성해줘야 합니다.

제가 예약어는 외우실 필요 없어요! 라고 앞에서 이야기하기도 했지만, 이 기본 자료형은 프로그램을 처음 공부하시는 분이라면 외우셔야 합니다! 그냥 외워두시면 앞으로 공부할 때 도움이 되실거에요.

 

기본 자료형은 크게 정수형, 문자형, 실수형, 논리형 네가지로 나뉘고, 1바이트(byte), 2바이트(byte), 3바이트(byte), 4바이트(byte)로 나뉩니다. 

여기서 바이트란? 🤔

 

라고, 두산백과에서 설명하고 있기는 한데요. 

프로그램 처음하는 저는 무슨 말인지 모르겠다 하는 경우에는 일단 이렇게 기억을 해두세요.

변수에 값을 대입하기 위해서 공간을 만든다고 설명을 앞서 드렸었는데요. 그 공간의 크기가 한칸이면 충분할지, 두칸이면 충분할지 값이 들어가는 크기에 따라 사용되는 자료형이 달라질 수도 있다. 라고 기억해 두시면 좋습니다.

 

예를 들어, 실수형은 소수점자리가 있는 숫자를 의미하는데, 

3.14를 담기위해서는 4칸을 확보하는 float으로 충분하고, 

3.14159265358979323846264338327950....을 담기 위해서는 8칸을 확보하는 double을 써야하나봐. 

일단 이렇게 기억을 해두도록 하죠.

 

여튼 위 표의 내용을 일단 머리속에 저장하세요! 🤓

 

 

첫번째로 정수형에 대한 설명입니다.

정수형은 숫자를 이야기하는데요. 프로그램은 숫자를 표현하는 경우가 많다보니 자료형의 종류도 4가지나 되네요.

 

 

 

정확히 더 설명을 한다면, 1byte는 8비트이고 표현 가능한 숫자의 범위는 -128에서 127까지...라고 더 자세히 이야기할 수 있지만, 일단 너무 복잡하고 어려워지니, 자바가 좀 익숙해질 때 다시 해당 내용은 살펴보기로 해요.

 

대신 이건 기억해두죠. byte는 한칸, short는 두칸, int는 4칸, double은 8칸의 공간을 준비해 두는 것이다. 라고.

 

 

 

한글을 표현하는 조합은 영어나 특수기호(#, @, & 등)보다 복잡해서 2byte 이상을 사용합니다.

char는 한글자의 문자를 할당할 때 씁니다. 그럼 긴 문자열은 어떻게 하지?라고 궁금해하셨다면, 이후에 설명드리도록 하겠습니다. 아래에 나와요.

 

앞에서도 살짝 언급했는데요, 실수형은 소수점 숫자를 표현할 때 쓰는 자료형입니다. 

정수와 실수 모두 숫자인데요. 프로그래밍을 할 때에 같은 숫자이지만 시스템에서는 표현하는 방법이 명확히 다르게 구분되기 때문에 자료형도 두 숫자의 자료형을 구분지어 사용하는 거라고 생각하시면 됩니다.

 

 

마지막으로, 프로그래밍 할 때 많이 쓰이는 자료형은 논리형 입니다.

참과 거짓, true와 false로 구분되고, 프로그래밍에서 정말 다양하게 활용됩니다!

 

다시 말씀드리지만, 일단 그냥 외워두셔요!

 

 

지금까지 변수 이야기를 했는데요, 때에 따라서 값이 변하지 않고 고정되어야 하는 경우도 있습니다.

 

자바에서는 구분 짓기 위해 선언된 변수 앞에 final을 붙여줍니다.

final을 자료형 앞에 선언해주게 되면, 상수니까 고정된 값이야 라고 고정되게 되고, 혹시라도 해당 변수에 다른 값을 재할당하려고 하면, 이거 상수야!!!! 재할당 할 수 없어!! 라고 오류로 메세지를 보여줍니다.

 

공간에 한번 담긴 값이 그대로 고정되어 새로운 값을 넣을 수 없게 꽁꽁 감싸놓는다고 생각하시면 됩니다.

 

 

 

앞에서 문자에 대한 이야기를 했는데요, 긴 문자열은 어떻게 하는지는 아래에 나와요! 라고 넘겼었죠.

 

긴 문자열을 담아 처리하기 위해 자바가 제공해주는 클래스 String이 있습니다.

String은 데이터 타입은 아니고, 자바 클래스 입니다.(헷갈리시면 안됩니다! String은 데이터 타입이 아니에요)

여러 문자를 담기 위해 한글자씩 char에 담는 것은 너무 힘든 일일거에요.

그래서 여러 문자를 한번에 담을 수 있도록 자바가 특별히 제공해주는 모듈 입니다.

 

아직 클래스에 대한 이야기를 하지 않았기 때문에, 그리고 참조 타입에 대한 이야기도 아직 하지 않았기 때문에, 교안의 내용을 보고 무슨 소리지?🤔 라고 생각하실 수도 있을텐데요.

긴 문자열을 변수로 정의하고 할당하기 위해 String을 데이터 타입 선언하는 것과 동일하게 사용한다는 것만 일단 기억해두세요!! 이후 포스팅에서 다시 언급하는 때가 옵니다!

 

 

예전에 자바와 파이썬을 비교할 때 대표적으로 이야기했던 것 중에 하나가

자바는 변수를 선언할 때 데이터 타입을 명시해야하고, 파이썬은 변수 선언할 때 데이터 타입을 명시하지 않아도 된다 였습니다. 하지만, 자바 버전 10부터는 자료형을 쓰지 않고도 변수 선언을 할 수 있습니다. 

그렇기 때문에, 자바와 파이썬을 비교할 때 변수의 데이터 타입을 쓰고 안 쓰고의 차이가 있다라는 표현은 자바의 버전에 따라 다르다로 기억해두세요.

 

 

 

자료형이야기의 마무리는 주석으로 해보겠습니다.

프로그래밍을 할 때 기본이라고 이야기할 수 있는 부분 중의 하나, 바로 주석달기 입니다.

프로그래밍 중간중간 코드에 대한 설명, 혹은 코드 시작부분에 작성한 모듈에 대한 설명을 기재하는 방법입니다.

 

다른 사람이 쉽게 이해할 수 있는 코드가 좋은 코드라는 이야기를 하는데요, 그 때 주석도 중요한 역할을 합니다.

변수이름을 잘 지었다면 그 변수가 어떤 역할을 하는지 금새 이해하고 읽어들일 수 있게 되는 것처럼, 중간 중간 적절한 주석은 프로그램의 성격과 전체 흐름을 파악하는데 도움이 됩니다.

프로젝트에서 주석 작성 기준이 정해져있기도 하고, 그렇지 않은 경우도 있지만, 내가 만든 프로그램에 적절한 주석을 다는 습관은 좋은 프로그램을 만드는데에 좋은 시작점이 됩니다.

변수 이름 잘 만들기, 그리고 주석 잘 달기는 가장 기본적이지만 지키기 어려운 것 중에 하나입니다.

프로그래밍 초반 습관을 잘 쌓으시면 분명 나중에 도움이 되실 겁니다! 🤓

 


 

변수에 이어 자료형에 대한 내용을 살펴보았습니다.

기본 자료형들은 모두 외워버리세요! 

그리고, String으로 긴 문자열을 정의한다는 것과 좋은 프로그래밍을 작성하기 위해 주석을 작성하는 습관도 길러야 한다는 것도 함께 기억해 두세요. 

이번엔 기억해둬야 하는 내용이 많았네요! 😅

 

자료형을 살펴봤으니 다음 번 포스팅에서는 그 자료형을 변환하는 것에 대해 설명하도록 하겠습니다.

 

 

[에밀리쌤의 JAVA 기초] 형 변환

자바 기초 프로그래밍의 교안을 바탕으로 한 추가 설명입니다. 이전에 자료형에 이어 형 변환에 대해 설명합니다. [에밀리쌤의 JAVA 기초] 자료형 자바 기초 프로그래밍의 교안을 바탕으로 한 추

classroom.emilylecture.com

 

 

반응형

댓글