본문 바로가기
☕Java/Java 기본

Java 변수와 배열

by 캔 2021. 5. 20.

값을 담을 수 있는 공간을 변수라고 한다. 자바에서 기본적으로 제공하는 자료형에는 boolean, byte, char, short, int, long, float, double, String형이 있다.

package Day2;

public class practice {
	public static void main(String[] args) {
		/* 원시(primitive) 자료형 */
		boolean b;// 불리언형: 1bit; 0 또는 1
		byte B;// 바이트형: 1byte; -128 ~ 127
		char c;// 문자형: 2byte; - 0 ~ 65535
		short s;// 쇼트형: 2byte; -32,768 ~ 32,767
		int i;// 정수형: 4byte; -2,147,483,648 ~ 2,147,483,647
		long l;//롱형: 8byte; -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807
		float f;// 플로트형: 4byte;
		double d;// 더블형: 8byte;
		////////////////////////////////////////////////////////////////////////////////////////
		/* 참조(reference) 자료형 */
		String S;// 문자열형; 크기 제한 없음
	}
}

이중에 Stiring 제외한 나머지는 원시 자료형이라고 해서 "자료형 변수명 = 값;" 형식으로 선언이 가능하다. 반면에, 문자열형인 String 형은 변수에 직접 값을 할당(call by value)하는 것이 아니라 주소 값을 참조하는 방식이다.(call by reference) 이러한 방식은 자바 프로그래밍에서 객체를 생성하는 방식과 동일하다.(객체를 선언하듯이 String s = new String(); 형식으로 선언) 그러나 String형은 객체 선언 시의 참조 방식뿐만 아니라 일반 변수 선언 방식으로도 선언이 가능하다.

같은 데이터 타입의 집합 공간인 '배열'에 대해 알아보자.

package Day1;

public class Practice {
	public static void main(String[] args) {
	String[] s = new String[3]; // 배열 선언
	s[0] = "도라지";// 배열 첫 번째 공간에 "도라지" 문자열 할당
	s[1] = "더덕";// 배열 두 번째 공간에 "더덕" 문자열 할당
	s[2] = "인삼";// 배열 세 번째 공간에 "인삼" 문자열 할당
	
	System.out.println("s[0]:" + s[0]);
	System.out.println("s[1]:" + s[1]);
	System.out.println("s[2]:" + s[2]);
	}
}

배열은 자료형 뒤에 []을 붙이면 선언이 가능하다. 배열은 선언 시에 그 크기를 정해주어야 하는데 위 코드에서 String[3]과 같이 선언하면 String형 자료 3개를 모아놓은 배열이 된다. 선언 후에는 's[i]'와 같이 대괄호 안에 숫자(첨자 혹은 index. 0부터 시작)를 통해 각각의 자료들을 선언하거나 할당할 수 있다.