nme.kr

Ch.03 변수와 자료형

기본자료형

char 자료형

package chapter03;

public class CharType {

	public static void main(String[] args) {
		
		char a = 'A';
		
		System.out.println("a:"+a);
		
		int b = a;
		System.out.println("b:"+b);
		
		char c = 66;
		System.out.println("c:"+c);
		
		int d = a+b; // 65 + 65
		System.out.println("d:"+d);

	}

}

자료형-참조자료형

package chapter03;

public class StringEx {

	public static void main(String arg[]) {
		
		String name; // 변수 선언
		name = "홍길동"; // 변수 초기화
		
		String name2 = "홍길동"; // 선언과 동시에 초기화
		String name3 = null;   // null값으로 초기화
		String name4 = "";     // ""값으로 초기화

		System.out.println("name2="+name2);
		System.out.println("name3="+name3);
		System.out.println("name4="+name4);
	}

}

변수의 범위

package chapter03;

public class ScopeEx { // 1. 클래스 블럭

	int no; // 1. 클래스 블럭 내에서 사용 가능한 변수
	
	public static void main(String[] args) { // 2. main 메서드 블럭
	
		String name; // 2. main 메서드 블럭 내에서 사용 가능한 변수
		
		if (true) {
			// 메서드 블럭 안에서 선언한 변수 사용 가능
			name = "홍길동";
			
			// if문 블럭안에서 변수 선언
			String email = "[email protected]";
		}
		
		// if문 블럭 밖에서 email 변수를 사용하면 에러 발생 
		//email = "[email protected]";
	}
}

형변환 (casting)

package chapter03;

public class CastingEx {

	public static void main(String[] args) {
		
		// 자동형변환 예시
		int number = 10;	// int 자료형
		
		long number2 = number;	// 자동형변환 int < long
		
		System.out.println(number2);
		
	}
}

package chapter03;

public class CastingEx2 {

	public static void main(String[] args) {
		
		// 강제형변환 예시
		double pi = 3.14;	// double 자료형
		
		int pi2 = (int)pi;	// 강제형변환
		
		System.out.println(pi2); // 값의 손실 발생
	}
}

package chapter03;

public class CastingEx3 {

	public static void main(String[] args) {
		
		// 강제형변환 예시
		double score = 100;	// double 자료형
		
		int score2 = (int)score;	// 강제형변환
		
		System.out.println(score2); // 값의 손실 발생하지 않음
	}
}