2014년 5월 30일 금요일

JAVA-자료형

1. boolean(논리형)
논리형 데이터를 이르며, 값은 true, false 밖에 없다.

예제) BooleanExam.java
01-class BooleanExam {
02-public static void main(String args[]) {
03-boolean b=true;
04-System.out.println("변수 b의 값 :" +b);
05-}}

이에 대한 예제의 값은
변수 b의 값: true
 만약 b=1이라고 해도 boolean는 true나 false만 표시하기 때문에 컴파일이 되지 않는다.




2. 문자형
자바는 유니코드 형식으로 다국어를 비롯해 2바이트의 문자를 작성하는데 쓰인다.

예제)CharExam.java
01-class CharExam {
02-public static void main(String args[]){
03-char c='A';
04-System.out.println("c의 값 :" +c);
05-}}

예제의 실행 결과문
c의 값: A

여기서 작은 따옴표('')가 아닌 큰 따옴표("")로 A를 꾸며줄 경우 문자형이 아닌 문자열이 되기 때문에 오류가 발생한다. 

문자형은 유니코드를 바탕으로 하기 때문에  유니코드 값을 안다면 대체 가능하다.

예제)CharExam2.java
01-class CharExam2 {
02-public static void main(String args[]){
03-char c= '\u0042';
04-System.out.println("c의 값 :"+c);
05-}}

위 예제의 실행 결과

c의 값 : B
 여기서 \u0042는 유니코드에서 대문자 B에 해당하는 글자이다.



3. 정수형
정수형은 자연수와 0, 음수를 표기하는 방법에 따라 크게 byte, short, int, long으로 나뉘어져 있다.

예제. IntExam.java
01-class IntExam {
02-public static void main(String args[]){
03-byte var1=128;
04-System.out.println("var1의 값 :" +var1);
05-}}

위의 예제를 컴파일 하면 에러가 발생하는데 이는 byte의 값이 127까지 되어 있기 때문이다. 따라서 그 이상을 넘어가면 값이 표시되지 않는다.

[정수형의 표현 범위]
byte: -128~127
shot: -32,768~32,767
int: -2,147,483,648~2,147,483,647
long: -9,223,372,036,854,775,808~9,223,372,036,854,775,807

예제. IntExam02.java
01-class IntExam02 {
02-public static void main (String args[]){
03-byte var1=127;
04-short var2=32000;
05-int var3 = 550;
06-System.out.println("var1의 값 :"+var1);
07-System.out.println("var2의 값: "+var2);
08-System.out.println("var3의 값: "+var3);
09-}}

위 예제의 결과
var1의 값: 127
var2의 값: 32000
var3의 값: 550



4. 실수형
소수점을 가지는 자료를 말하며, float와 double 두가지로 나뉘어져 있다.

[실수형의 표현 범위]
float: -3.4E38~3.4E38
double: -1.7E308~1.7E308

예제. FloatExam01.java
01-class FlaotExam01 {
02-public static void main (String args[]){
03-float var1=3.4;
04-System.out.println("var1의 값: "+var1);
05-}}

위의 예제는 오류인데, 3행에 var1 앞에 float를 써 변수 선언을 한 것까지는 맞으나, 이후에 형변환까지 해주어야 하기 때문에 실제로는 기본형인 double로 변수가 인식되므로 오류를 일으키기 때문이다. 이를 피하기 위해서는 변수에 float임을 명시하거나 형변환을 해주어야 한다. 이는 나중에 알아보도록 하겠다. 먼저 변수를 명시하는 것은 아래와 같다.

예제. FloatExam02.java
01-class FloatExam02 {
02-public static void main (String args []){
03-float var1, var2;
04-var1=3.4f // float형으로 명시
05-var2=550 // 여기서는 int 550이 float 550.0으로 형변환된다.
06-System.out.println("var1의 값 :" +var1);
07-System.out.println("var2의 값 :" +var2);
08-}}

위의 예제 실행 결과
var1의 값: 3.4
var2의 값: 550.0

댓글 없음:

댓글 쓰기