20.12.23-23일차

되자개발자·2020년 12월 23일
0

기록하기

목록 보기
23/46

💗변수

🎄변수의 기본값과 초기화

변수의 초기화: 변수에 처음으로 값을 저장하는 것
(*지역변수는 사용되기 전에 반드시 초기화하기)

🎄문자와 문자열

// 묵시적 형변환. 데이터가 내부적으로 형변환 과정이 발생
	String a = 7 + " ";
	String b = " " + "7";
	String c = 7 + "";
		
	String e = 7 + 7 + ""; // 14 + "" -> "14" + ""
	String g = "" + 7 + 7; // "" + "7" = "7" + "7"
		
	System.out.println(e); // 14
	System.out.println(g); // 77

🎄정수의 오버플로우(Overflow)

최댓값 +1 -> 최소값
최소값 -1 -> 최대값

예)
	byte b = 127;
	b = b + 1; // 에러발생 
// 128 -> byte(-128~127) overflow 발생
// 1은 int형
// 데이터타입끼리 연산을 하게되면 형변환이 발생
예)
	byte b = 127;
	b++;
//증감연산자를 사용하면 내부적으로 형변환이 문제가 되지않도록 설계되어있다

	System.out.println(b);
 
결과: -128

🎄형변환(Casting)

  • 값의 타입을 다른 타입으로 변환
  • boolean을 제외한 7개의 기본형은 서로 형변환 가능
예1)
	double d = 85.4;

// int score = d; 에러발생
// int 크기 4byte, double 8byte
// 데이터타입의 크기
// 정수형 < 실수형
		
// 큰 데이터타입의 기억장소에 작은 데이터타입의 값을 저장은 가능
// 작은 데이터타입의 기억장소에 큰 데이터타입의 값을 저장은 불가능
// 단, 명시적 형변환을 통하여 가능
// 그러나 , 값의 유실도 발생할 수 있다

	int score = (int) d; // (데이터타입) 캐스팅작업(형변환)
		
	System.out.println(score);
    
결과 : 85
예2)
	int i = 10;
// byte : -128~127
	byte b = (byte) i; 
// 작은 데이터타입의 기억장소에 큰 데이터타입의 값을 저장은 불가능
// 좌측 변수 = 우측의 값 대입할 때 서로간의 타입을 일치시킨다
	System.out.println("int -> byte : " + i + "," + b);
    
//여러개의 변수값을 출력하는 문자열안에 삽입해서 사용하고자 할 때 편리함
      System.out.printf("[int -> byte] i=%d -> b=%d\n", i, b);
	// %d 숫자를 나타냄
    
 결과 : int -> byte : 10,10
 [int -> byte] i=10 -> b=10
 
예3)
// f = d(double) .. 타입일치 하기
	float f = 9.1234567f;
	double d = 9.1234567;
	double d2 = f; 
    // 내부적으로 묵시적 형변환 double d2 = (double) f;
    // 정수는 %d로 표현, 실수는 %f로 표현
		
	System.out.printf("f = %20.18f \n" , f);
		// %f는 기본 여섯자리
		// 소수자리 포함 20자리. 소수자리만 18자리
	System.out.printf("f = %20.18f \n" , d);
	System.out.printf("f = %20.18f \n" , d2);
  
결과 :
f = 9.123456954956055000 
f = 9.123456700000000000 
f = 9.123456954956055000 

💗연산자

연산자: 연산을 수행하는 기호(+, -, *, /)
피연산자: 연산자의 연산 수행 대상
"모든 연산자는 연산결과를 반환한다."

🎄 증감 연산자

증가 연산자(++) : 피연산자의 값을 1 증가시킴
감소 연산자(--) : 피연산자의 값을 1 감소시킴

전위형 : 값이 참조되기 에 증가시킴( j = ++ i ;)
후위형: 값이 참조된 에 증가시킴 ( j = i ++ ; )
"증감 연산자가 독립적으로 사용된 경우, 전위형과 후위형의 차이가 없다."

profile
열심히가 되는 길♨_♨

0개의 댓글