Language (총 39개) 썸네일형 리스트형 Java - InputStream 의 read()메소드는 왜 int형을 반환 하는가 InputStream 의 read()는 입력스트림의 1바이트를 읽기위한 메소드이다그런데 메소드의 시그니처를 살펴보면 반환형이 int형 인것을 볼 수 있다. 이유는 입력스트림을 읽다가 끝이란 것을 나타내기 위해 -1을 return 해야하지만byte의 경우 8bit(0 ~ 255) 이기 때문에 -1 이란 값을 리턴할 수가 없다. 따라서 -1 (int형)을 리턴함으로써 입력스트림의 끝을 나타낸다. Java - String 과 StringBuffer 클래스 * String 은 불변 클래스이다 ! String hi = "hello"; hi += " world";System.out.println(hi); => hello world ? String 은 불변 클래스라고 하지 않았던가 어떻게 이런일이 가능한지 살펴보자 java 에서는 String값에 변화가 필요할경우 아래와 같은 작업이 일어난다 1. String hi = "hello"; => 가장먼저 JVM 메모리 상수풀에 "hello" 라는 문자열이 넣어지고 그 주소를 hi 변수가 가리키게 된다. hi -> "hello" 2. hi += " world"; String은 불변객체이므로 직접 값을 바꿀수 없다 따라서 먼저 StringBuffer 란 객체를 생성하고 원래의 String 값을 넣는다 new StringB.. Java - equals 과 == 차이 1. equals 는 객체가 가진 내용이 같은지 다른지를 비교하는 메소드이다 2. "==" 는 객체의 메모리 주소를 비교한다 ex ) String a = "a"; String b = "a"; if (a.equals(b)) system.out.println("같다") => 같다 if (a == b) system.out.println("같다") => 같다 * "==" 은 메모리의 주소를 비교한다고 했는데 왜 같다 라는 결론이 나왔을까 Java 에서 Jvm에 메모리 할당시 String a = "a"; 와 같은 방식으로 할당할 경우 상수풀이란 곳에 "a" 값이 저장되게 되고 a가 그 주소를 가리키게된다 이때 String b = "a"; 를 실행 할 경우 상수풀에 이미 "a"란 값이 있으므로 b에 새로운 주소가 .. Java - Wrapper / 오토박싱 1. Wrapper 클래스 자바에는 기본형 타입들을 객체 형태로 변형 시켜주는 클래스들을 일컫는다 ex) -Integer -Long -Double -Float -Byte -Short -Character -String * 래퍼클래스(Wrapper) 를 사용하는 이유 (기본타입을 객체 타입으로 바꾸어야 하는 이유) => 1. 각각의 래퍼클래스에서 제공하는 메소드들을 사용하기 위해 ex ) 예를 들어 int -> String , String -> int 형으로 바꾸기 위해 2. 오토 박싱/언박싱 기본 타입의 값을 객체 타입으로 자동으로 바꾸고 그 반대로 하는 행위 * 왜 필요한가 ? java5 이전의 버전에서는 기본타입의 값들이 래퍼클래스의 메소드들을 사용하기 위해서는 래퍼클래스로 기본타입의 값을 변형 시킨뒤.. C - 3. 출력(printf) printf() - 이 함수는 출력을 위해 사용된다. - 이 함수를 사용하기 위해서는 stdio.h 를 선언해야 한다. - printf() 함수는 1. control_string 과 2. other_argument 두개의 인자를 받는다 1. control_string - 문자열로 변환 명세를 넣는다 - 변환 명세에는 %와 변환 문자가 들어간다 ex) "%d" *변환 문자 - c (단일문자) , d (십진정수) , f (부동 소수점 숫자) , s (문자열) 2. other_argument - 변환명세에 따른 출력할 값이 들어간다 * 사용법 - ex) printf("%d", 10); => 결과 : 10 C - 2. 상수 변수에 상반되는 개념으로 변하지 않는 수를 말한다. 정수 상수 - 0 , 1 ,2 등.. 실수 상수 - 1.0 , 3.14159 등.. 문자 상수 - 'a' , 'b' , '+' 등.. (작은 따옴표에 묶인 문자) 문자열 상수 - "abc" 등.. (큰 따옴표에 묶인 문자들) C - 1. 변수 * 주소 - 우리가 메모리에 값을 저장하고 그 값을 가져와 사용하고 다시 저장하기 위해서는 메모리상에서 그 값이 어디에 저장이 되어있는지를 알아야한다 이 때 그 값의 위치를 주소라고 한다. * 변수 - 변수는 어떠한 값을 저장하고 있는 공간이다. - 위에서 말한 것 처럼 값을 저장하기 위해서는 주소가 필요한데 변수에는 일정한 주소값이 지정 되어 사용자는 주소를 모르더라도 변수를 이용하여 값을 가져오고 저장할 수 있다. *사용법 - int a = 10 ; 자료형 변수명 대입연산자 넣을값 세미콜론 => int형으로 선언된 변수 a에 값(10) 을 넣는다. * 변수 종류 자료 크기 1. char - 문자 1byte(8bit) 2. short - 정수 2byte(16bit) 3. int - 정수 4byte(32.. 이전 1 2 3 4 5 다음