3층 1구역 - 개발의 장/JAVA

JAVA - 변수와 자료형의 기본 개념 (2022-07-06)

상이태상 2022. 7. 8. 11:02

1.변수란?

어떤 물건을 넣기 위한 박스의 개념.

Ex) int a = 10 여기서 a를 변수(박스), 10은 자료(물건)

 

  1. 변수는 알파벳 대/소문자, 숫자, _(Underscore), $ 등의 조합으로 만들 수 있다.
  2. 예약어는 변수로 칭하지 못한다.(int, boolen, float 등..)
  3. 변수명의 시작은 숫자로 시작해서는 안된다.

2. 기본 자료형

타입설명크기(bit)범위

char 16비트 유니코드(Unicode) 문자 데이터 16 ‘\u0000’ ~ ‘\uFFFF’
boolean 참/거짓 값 8 true 또는 false
byte 부호를 가진 8비트 정수 8 -128 ~ +127
short 부호를 가진 16비트 정수 16 -32,768 ~ +32,767
int 부호를 가진 32비트 정수 32 -2,147,483,638~+2,147,483,647
long 부호를 가진 64비트 정수 64 -9223372036854775808~+9223372036854775807
float 부호를 가진 32비트 부동 소수점 32 -3.402932347e+38~+3.40292347e+38
double 부호를 가진 64비트 부동 소수점 64 -179769313486231570e+308~1.79769313486231570e+08
  • 문자형: char
  • 논리형: boolean
  • 정수형: byte, short, int, long
  • 부동 소수점형: float, double
package variables;

public class Ex1 {
	public static void main(String[] args) {
		// = : 대입연산자, 왼쪽은 공간(변수), 오른쪽은 데이터, 왼쪽공간에 오른쪽 데이터를 입력.
		int data = 10; //상수 10의 자료형은 int
		long longData = 100; //상수 100의 자료형은 int(long에 기입)
		long longData2 = 100L; //상수 100L의 자료형은 long
		double doubleData = 123.456; //상수 123.456의 자료형은 double
		float floatData = (float)123.456; //상수 123.456f의 자료형은 float
		//↑↑↑↑큰 범위의 자료형이 작은 범위의 자료형으로 대입 할때 Casting 이라 하며, 상수 앞에 (예약어)를 쓴다.
		char charData = 'a'; //상수 'a'의 자료형은 char
		String strData = "상수"; //상수 "상수"의 자료형은 string은 기본자료형
		
		short shortData;
		shortData = 123;
		data = 5564;
		System.out.println("data : " + data);
		
	}

}

2-1. 자료형과 변수를 활용한 나의 신상정보 나타내기

package variables;

public class Ex2 {

	public static void main(String[] args) {
		int age = 14;
		double weight = 50.5;
		double height = 170.5;
		
		System.out.println("나의 나이는 " + age + "세 입니다.");
		System.out.println("나의 몸무게는 " + weight + "(kg) 입니다.");
		System.out.println("나의 키는 " + height + "(cm) 입니다.");

	}

}

결과

나의 나이는 14세 입니다.
나의 몸무게는 50.5(kg) 입니다.
나의 키는 170.5(cm) 입니다.

 

2-2. 변수와 변수의 관계

package variables;

public class Ex3 {

	public static void main(String[] args) {
		int data1;
		data1 = 10; //data1 이라는 변수에 10을 저장
		
		int data2 = data1; // data2 라는 변수에 data1변수의 내용을 저장
		int data3; //변수의 초기값을 설정하지 않음
		
		System.out.println("data1 : " + data1);
		System.out.println("data2 : " + data2);
		// System.out.println("data3 : " + data3); 초기에 값을 입력하지 않은 변수는 사용할 수 없다.

	}

}
package variables;

public class Ex4 {

	public static void main(String[] args) {
		int data = 123;
		int result;
		
		data = data + 10; //data변수에 저장되어 있는 값과 10을 더해 data변수 갱신
		
		char ch = 'D'; //아스키코드 기준으로 문자를 숫자로 나타내면 68
		ch = (char) (ch + 3); //유니코드 기준으로 68+3 = 71 이것을 문자로 변환
		result = data + ch; // data변수와 ch변수를 더함
		
		System.out.println("data : " + data);
		System.out.println("ch : " + ch);
		System.out.println("ch : " + (int)ch); //문자를 정수로 변환
		System.out.println("result : " + result);

	}

}

결과

data : 133
ch : G
ch : 71
result : 204

package variables;

public class Ex5 {
	public static void main(String[] args) {
		String data = "Java"; //data 변수에 java를 삽입
		System. out .println ( "data : " + data ); //변수 도출
		
		data = data + " Programming"; //data 변수에 기존에 있던 java + Programming을 삽입하여 갱신
		System. out .println ("data : " + data ); // 변수 도출

	}
}

2-3. 자료형과 변수를 활용한 나의 신상정보 나타내기 Quiz

package variables;

public class Quiz2 {

	public static void main(String[] args) {
		String name = "김말이";
		int age = 20;
		double height = 173.3;
		int iq = 120;
		String grade = "B";
		
		System.out.println("이름\t: " + name);
		System.out.println("나이\t: " + age);
		System.out.println("키\t: " + height);
		System.out.println("아이큐\t: " + iq);
		System.out.println("성적\t: " + grade);
		
		
	}

}

결과

이름 : 김말이
나이 : 20
키 : 173.3
아이큐 : 120
성적 : B