본문 바로가기
BACK-END/JAVA

변수와 타입

by 썬키 2021. 11. 16.

21.11.15
: JAVA 변수, 타입

1. 기본 데이터 타입(primitive)
: 타입은 소문자로 시작하고, 크기가 정해져있다.

1-1. 숫자
-정수(소수점이 없다) : 부호 + 값
 byte - short(2byte) - int(4byte-기본) - long(8byte)

-실수(소수점이 있다) : 부호 + 지수승 + 값
 float(4byte) - double(8byte)

∴정수보다는 실수가 섬세한, 더 큰 숫자를 다룰 수 있다.

1-2. 문자
-2byte이고 음수가 없는 숫자로 저장한다.
- 글자 한개 'A' → ' 안에 글자가 반드시 한개가 존재해야 한다.
ex) char a = 'a' ;

1-3. 논리
boolean : true / false
└1bit면 되지만 저장 최소 단위는 1byte(8bit)를 사용한다.

2. 참조형 변수(객체 변수) - 주소가 포함돼 있다.
└참조형 변수인데 주소가 없다 : null

2-1. String - 문자열(문자 배열) (" ")
:0개 이상의 문자열을 " " 안에 넣는다.

2-2. 배열 - 변수 타입 여러개 ([ ])
:변수 또는 변수 타입 뒤에 [ ]

 


 

 

public class VariableTask {

public static void main(String[] args) {
//다음에 나타난 오류 수정해서 실행이 되도록 만드시고 한 줄 주석을 작성하시오.
//* int타입 변수 i의 초기값을 67로 저장
int i = 67;

//* long타입 변수 l의 초기값을 i(67)로 저장
//* l(long)은 67(int)보다 큰 데이터 타입이므로 데이터손실x, 자동 형변환
long l = i;

//* byte타입 변수 b의 초기값을 i(67)로 저장
//byte b = i; 컴파일 에러 //
//↓
//*b(byte)는 67(=int)보다 작은 데이터 타입이므로, 강제캐스팅必
byte b = (byte)i;

//* byte타입 b의 변수 값을 출력
System.out.println(b);

//* char타입 변수 c의 초기값을 i(67)로 저장
//char c = i; 컴파일 에러//
//↓
//* c(char)는 i(int)보다 작은 데이터 타입이므로, 강제캐스팅必
char c = (char) i; 

//* 실행할 처리문 : c변수 2증가시키는 처리문
//* 변수 c의 값을 읽고 2를 더하는 산술 연산을 수행
c = (char) (i + 2);

//* 변수C의 값을 출력 했을때 E가 나온다 → E 유니코드는 69이다.
System.out.println(c); 
int uniCode = c;
System.out.println(uniCode);

int s1 = 100;
int s2 = 85;
int s3 = 90;

//* int타입 변수 s1,s2,s3의 값이 위와 같을 때 합계값출력
System.out.println(s1 + s2 + s3);
//* int타입 변수 s1,s2,s3의 값이 위와 같을 때 평균값출력
System.out.println((s1 + s2 + s3) /3);
//* int타입 변수 s1,s2,s3의 값이 위와 같을 때 평균값출력(소수점까지)
System.out.println((s1 + s2 + s3) /3.0);
//* int타입 변수 s1,s2,s3의 값이 위와 같을 때 평균값출력(정수만)
System.out.println((s1 + s2 + s3) /3);
//* int타입 변수 s1,s2,s3의 값이 위와 같을 때 평균값출력(소수점 둘째자리까지)
System.out.println(String.format("%.2f", ((s1 + s2 + s3) / 3.0)))
 }

}

댓글