본문 바로가기

java

(35)
타입 변환 자동 타입 변환변환아래 두 경우에는 자동으로 변환된다.타입이 자동으로 변환바이트 크기가 작은 타입에서 큰 타입으로 변환할 때 (예 : byte → int)덜 정밀한 타입에서 더 정밀한 타입으로 변환할 때 (예 : 정수 → 실수)즉, 작은 범위에서 (작은 범위를 포함한) 큰 범위로 변환 가능하나 큰 범위에서 박은 범위의 변환은 불가하다.   아래 순서도의 화살표는 화살표를 기준으로 좌측의 타입이 우측의 타입으로 자동으로 변환될 수 있음을 의미한다. byte(1) -> short(2)/char(2) -> int(4) -> long(8) -> float(4) -> double(8)반대로는 불가하다. 표현범위가 더 좁기 때문이다.단, 캐스팅 연산자 ()를 사용하며, 캐스팅 연산자의 괄호 안에 변환하고자 하는 타..
문자타입 2byte 크기의 char형만 있다. 문자는(' ')로 표현한다. (" ")는 사용하지 않는다. 큰따옴표를 사용한 리터럴은 문자형 리터럴이 아니라 문자열 리터럴로 인식되기 때문이다. 즉, 단하나의 문자만 받는다. char letter1 = 'a'; char letter2 = 'ab'; // 에러 : 단 하나의 문자만 할당할 수 있습니다. char letter3 = "a" // 에러 : 작은따옴표를 사용해야 합니다. 자바는 문자에서 유니코드( 각 문자에 숫자 코드 번호를 부여한 것 )를 쓴다. 따라서, char letter1 = ‘a’;와 같이 문자형 리터럴을 문자형 변수에 할당하면 letter1에는 영문자 a의 유니코드 숫자값이 저장된다. 출력할때는 System.out.print를 쓴다. char let..
논리타입 boolean형 한가지로, 참(true)인지 거짓(false)인지를 저장하는 데이터 타입이다. 단순히 참과 거짓을 표현하기 위해서는 1bit만 있으면 되지만,JVM이 다룰 수 있는 데이터의 최소 단위가 1byte이기 때문에 boolean형 은 1byte(8bit)의 크기를 가진다. boolean isRainy = true;boolean isAdult = false;
실수 타입 실수는 소수점을 가지는 값을 의미하며, float형과 double형으로 분류한다. 타입메모리표현 범위정밀도float4byte음수 : -3.4 * 1038 ~ -1.4 * 10-45양수 : 1.4 * 10-45 ~ 3.4 * 10387자리double8byte음수 : -1.8 * 10308 ~ -4.9 * 10-324양수 : 4.9 * 10-324 ~ 1.8 * 1030815자리double은 float 보다 더 정확하고 더 큰 실수를 저장할 수 있다.double형 리터럴(값)에는 접미사 d를 붙여도, 안 붙여도 상관 없지만, float형 리터럴에는 반드시 접미사 f를 붙여주어야 한다.실수형의 오버플로우와 언더플로우실수형에서도 오버플로우와 언더플로우가 발생한다.단, 정수타입의 오버플로우와 언더플로우가 발생했을..
String 타입의 변수 선언과 할당 // 문자열 리터럴을 String 타입의 변수 name에 할당하는 방법String name1 = "Kim Coding";// String 클래스의 인스턴스를 생성하는 방법String name2 = new String("Kim Coding");문자열만 new를안써도 동작한다.참조타입은 모두 대문자로 시작한다.기본 타입은 null값을 넣기위해 대문자로 쓰기도 한다. 기본적으로 String 타입은 큰따옴표("")로 감싸진 문자열을 의미한다.(2단어 이상)1. 문자열 리터럴과 객체 생성 방식문자열 리터럴로 할당문자열 리터럴은 문자열을 String 타입의 변수에 직접 할당하는 방식이다.이때 동일한 문자열 리터럴은 String Pool에 저장되어 재사용된다.  new 키워드로 객체 생성new 키워드를 사용하면 He..
정수 타입 정수 타입은 숫자를 나타내는 타입으로, 메모리 크기와 표현 가능한 숫자의 범위에 따라 네 가지로 분류된다: byte, short, int, long. 각 타입의 메모리 크기와 표현 범위는 다음과 같다.정수 타입의 분류타입메모리 크기표현 범위byte1 byte-128 (-2⁷) ~ 127 (2⁷ - 1)short2 byte-32,768 (-2¹⁵) ~ 32,767 (2¹⁵ - 1)int4 byte-2,147,483,648 (-2³¹) ~ 2,147,483,647 (2³¹ - 1)long8 byte-9,223,372,036,854,775,808 (-2⁶³) ~ 9,223,372,036,854,775,807 (2⁶³ - 1) (1byte는 8bit로, 표현범위는 2의 8승이다.) long 타입 사용 시 주의점..
리터럴 리터럴은 값 그 자체를 의미한다.변수에 할당되는 구체적인 데이터를 리터럴이라고 하며, 코드에서 문자나 숫자로 직접 작성된 값을 말한다.리터럴은 변수에 저장되기 전에 메모리 상에 고정된 값으로 존재한다. 위에서 num이 할당하고 있는 1이 바로 리터럴이다. 즉, 문자로 할당된 값이다.  리터럴의 종류자바에서 리터럴은 다양한 형태로 존재한다:정수 리터럴: 1, 100, -50실수 리터럴: 3.14, 0.1, -2.5문자 리터럴: 'A', 'b'문자열 리터럴: "Hello", "Java"불리언 리터럴: true, false
타입 타입은 말 그대로 값의 종류를 나타낸다.타입에 따라 값이 차지하는 메모리 공간의 크기와 값이 저장되는 방식이 결정된다. 자바에서는 타입을 크게 기본 타입과 참조 타입으로 나눌 수 있다. 기본 타입과 참조 타입 1. 기본 타입 (Primitive Type)기본 타입은 정수(int, long 등), 실수(float, double), 문자(char), 불리언(boolean)과 같은 실제 값을 저장한다.이러한 값들은 변수에 직접 저장되며, 메모리 내에서 고정된 크기의 공간을 차지한다.    2. 참조 타입 (Reference Type)참조 타입은 기본 타입을 제외한 나머지 모든 타입을 의미하며, 데이터의 실제 값이 아닌 주소값을 저장한다.주소값은 객체가 메모리의 어느 위치에 저장되어 있는지를 나타낸다.     ..