데이터타입 변수이름 = 값;
int a;
long a;
->불가능
int a = 3; ->초기화
System.out.println(a); -> 타입 명시 없이 이름만으로 사용 가능
1.
int a = 3; int b = 10;
a/b = 0(정수)
2.
double x = 3.0; double y = 10.0;
x/y = 0.3(실수)
100억으로 변수 정의 시,
long x = 10000000000;(인식 불가)
long y = 10000000000L;(long으로 인식)
따라서 값 뒤에 'L'혹은 'l'을 붙여 long임을 인식시켜야 함.
int a = 1000;
int b = 100_000; -> 100,000
int c = 012; ->1X8^1 + 2X8^0 = 8+2 = 10(8진수)
int d = 0x12; -> 1X16^1+2X16^0 = 16+2 = 18(12진수)
double x = 0.1; double y = 0.2;
double z = x+y;
이때 z의 값은 0.300000....04가 출력 됨.
double x = 0.1; double y = 0.2;
double z = (x*10)+(y*10)/10;
0.3으로 정상 출력
float a = 1.0F;
flaot b = 3.14f;
char a = 'A';
char b = 65; ->아스키 코드표에서 65번째 문자 'A'를 출력
char c = '\u0041'; -> 유니코드의 0X0041번째 문자 'A'를 출력
char d = 'AA'; -> 두 글자 이상 출력 불가
char e = ''; -> 빈 문자 저장 불가
char f = ' '; -> 공백 한칸 출력 가능.
String a = ""; -> 빈문자 가능
String b = "A"; -> 한글자 가능
String c = "안녕하세요"; -> 여러글자 가능
String d = " "; -> 많은 공백 가능
String e = "하이 하이루"; -> 공백 포함한 여러글자 가능
String f = ''; -> ''는 char에만 쓰일 수 있으므로 불가
String g = "60"; -> 숫자 가능(문자 취급)
String a = "안녕하세요";
System.out.println(a.replace("안녕","하이"))
하이하세요가 출력 됨.
String a = "안녕하세요";
System.out.println(a.length())
안녕하세요 글자수 5가 출력 됨.
int a = 100;
long b = a;
float c = a;
double d = a;
long, float, double은 int보다 크기가 더 큰 자료형.
따라서 자동형변환 발생.
3/10 = 3 -> 같은 정수/정수이므로 형변환X
3.0/10 = 3.3333... -> 정수보다 실수가 크므로 정수->실수로 자동 형변환되어 계산.
3/10.0 = 3.3333... -> 상동.
3.0/10.0 = 3.3333..-> 같은 실수/실수이므로 형변환X
double a = 3.14;
int b = (int)a;->정수인 int에 맞춰 3으로 형변환 됨.
int x = (int)10000000000L;(백억)
->int의 범위(+-21억)을 초과한 값이므로 오류.
int a = 3; int b = 250;
double a1 = a/b; -> 250/3 -> 83 -자동형변환(double)-> 83.0
double a2 = (double) (a/b); -> 250/3 -> 83 -수동형변환-> 83.0
double a3 = (double) a/b; -> 250(수동형변환)/3 -> 250.0/3(자동형변환) -> 250.0/3.0 -> 83.333...
double a4 = a/(double)b; -> 250/3(수동형변환) -> 250(자동형변환)/3.0 -> 250.0/3.0 -> 83.333...
char a = 65; ->아스키코드 65번째 문자인 'A' 출력.
int b = 'B'; ->아스키코드 문자 B의 순번인 '66'출력.
int x = (int)"1234"; ->불가
String y = (String)1234; ->불가
문자와 숫자에서 +연산자 응용하기
1. 숫자+숫자 덧셈 3+5=7
2. 숫자+문자열 이어붙이기 3+"안녕"=3안녕
3. 문자열+숫자 이어붙이기 "안녕"+3+1=안녕31
4. 문자열+문자열 이어붙이기 "안녕"+"하세요"=안녕하세요
5. 문자열+(숫자+숫자) 괄호 계산 후 이어붙이기 "안녕"+(3+1)=안녕4