변수란?
변수란? 무엇인가에 대해서 얘기해보고자 합니다. 클래스틀을 만들기 위해서 꼭 알아야 할 개념중 하나입니다. 변수란 ?데이터값을 저장하기 위해 필요한 저장 공간이라고 처음에 알아두시면 좋습니다.
변수의 표현법을 알아봅시다.
자료형 변수이름;
자료형은 그 데이터 타입을 나타냅니다. 변수이름은 별칭입니다.
1) 변수이름의 첫 단어는 소문자로 시작합니다.
2)변수이름은 낙타 표기법으로 사용됩니다. 즉, 변수이름을 어떻게 짓는지는 개발자 마음이지만 최대한 나타내고자하는 것에 가까운것이 좋습니다. ex) num( 숫자) arry(배열) monsterType(몬스터 타입)등등 으로 생각하면 됩니다. 낙타 표기법은 몬스터 타입이라는 예에서 알수 있듯이 두 단어가 합쳐질때 두번째 단어를 시작할 때 대문자로 적는것을 말합니다.
변수는 3가지 형태로 나올수 있습니다.
중요하지는 않지만 굳이 나눈다면 (1) 변수를 선언 (2) 변수를 선언 하면서 바로 초기화 (3) 변수를 선언 후 나중에 초기화
변수 타입 int 예시) int 형은 정수를 받는 데이터타입이라고 생각하면 됩니다.
int num; ( 변수를 선언)
int num=10; (변수를 선언하며서 초기화, 초기화한다는 말은 그 변수에 값을 넣을것이다라고 생각하면 됩니다.)
int num;
num=10; (변수를 선언했고 나중에 10이라는 값을 저장)
그렇다면 도대체 데이터타입 혹은 자료형은 무엇일까라는 생각이 들게 됩니다. 이제부터 그 설명을 하겠습니다.
1) 논리형 타입 : 결과값으로 true와 false를 출력합니다. (1byte)System.out.println(isTrue); ==> true를 출력합니다.System.out.println(isFalse); ==> false를 출력합니다.
2) 숫자형 자료형 : 정수형은 byte, short, int, long 이 있다. byte가 커질수록 표현 할 수 있는 숫자가 많아집니다. 기본 정수 자료형은 int입니다.그리고 long은 자료값을 넣을때 L을 붙여주는것을 권장합니다.
* 주의 *
위의 이미지에 bNum , sNum , iNum lNum 은 언뜻보기에는 낙타표기법으로 보이지만 실제로는 헝가리안 표기법입니다. 저도 처음에 헝가리안 표기법에 대해서 알지 못했지만, 데이터자료형의 첫 단어와 변수명을 합치는것인데 이런 방식은 대부분의 개발자들이 사용을 거의 하지 않습니다.
나중에 개발자들이 유지보수 할 때 변수명에서 수정시 헝가리안 표기를 한다면, 변수의 자료형이 바뀌었을때 변수명을 하나 하나씩 다 바꿔야하는 단점이 있습니다.
밑에 fNum, dNum도 헝가리안 표기법이기에 변수명을 정할때 주의 하면서 정해주시면 나중에 유지 보수때 수월해집니다.
실수형은 float, double이 있다. float은 f를 붙여야하며, 기본형은 double입니다.
3) 문자형
문자형의 데이터타입은 char이다. 문자를 넣을시 'a'이런식으로 표현해야하며, 저기 숫자가 들어갈 수 있는것은 아스키코드에 의해서 변형되었다고 생각하시면 된다. 알파벳 A를 출력하면 아스키코드에 의해서 65라는 값과 B를 출력하면 66이라는 값이 출력되는데 아스키코드를 참조하시면 이해가 될것입니다.
4) 문자열형
문자열형의 데이터타입은 String이다. 기본 문자열을 넣을때는 " "안에 넣어준다. 그리고 중요한것은 자바에서 숫자와 문자열이 합쳐져서 출력이 될때는 문자열로 봅니다.
ex) System.out.println( 3 + " helloworld"); 출력시 3helloworld가 됩니다.
앞에서 배웠던 논리형 숫자형 문자형은 기본 자료형으로써 메모리영역에 stack에 저장이 되며 그 값이 저장되는 반면에 문자열형은 참조변수이다. 즉 주소값을 저장합니다.
참조하는 변수라는것을 기억하며 나중에 String에 대해서는 equals == 을 같이 설명하겠습니다.
'자바-자린이의 도전기' 카테고리의 다른 글
형변환? (0) | 2022.03.14 |
---|---|
Scanner 클래스로 입력 받기 (0) | 2022.03.13 |
검은화면 좋아하시나요? (0) | 2022.03.12 |
Hello world~ 출력하기 (0) | 2022.03.07 |
자바 설치(eclipse 설치 및 jdk 설치) (1) | 2022.03.03 |
댓글
이 글 공유하기
다른 글
-
Scanner 클래스로 입력 받기
Scanner 클래스로 입력 받기
2022.03.13 -
검은화면 좋아하시나요?
검은화면 좋아하시나요?
2022.03.12 -
Hello world~ 출력하기
Hello world~ 출력하기
2022.03.07 -
자바 설치(eclipse 설치 및 jdk 설치)
자바 설치(eclipse 설치 및 jdk 설치)
2022.03.03