Java (34) 썸네일형 리스트형 ToString 과 String.valueOf() toString() 과 String.valueOf()는 Object값을 String형으로 변환할 때 주로 사용하는 메소드 두 메소드는 String의 형태로 값을 변환해준다. 하지만 변경할 값이 null일 경우에 차이가 있다. 두 메소드의 차이점은 Null값에 따른 NullPointerException의 발생 유무이다. toString(): null 값을 형 변환 시 NullPointerException(NPE) 발생 ---> Object값이 String이 아니여도 출력 String.valueOf(): 파라미터로 null이 오면 "null" 문자열을 출력 Map 메서드 getOrDefault -찾는 키가 존재한다면 찾는 키의 값을 반환하고, 없다면 기본 값을 반환하는 메서드 getOrDefault(key, DefaultValue) 반환값: 찾는 key가 존재하면 해당 key에 매핑되어 있는 값을 반환하고, 찾는 키가 존재하지 않으면 디폴트값을 반환한다. 이론적인 공부 프로그램을 공부하면서 HTTP프로토콜에 대해서 대강 공부를 하였지만, 머릿속에 정리는 되지 않아서 다시 공부하게 되었다. HTTP프로토콜이란 -인터넷상에서 데이터를 주고 받기 위한 서버/클라이언트 모델을 따르는 것 -애플리케이션 레벨의 프로토콜로 TCP/IP위에서 작동한다. (위의 자료를 보면 TCP/IP는 3계층과 4계층에서 작동하는 것 같다.) -HTTP는 어떤 종류의 데이터든지 전송할 수 있도록 설계되어 있음 -HTTP로 보낼 수 있는 데이터는 HTML문서,이미지,동영상 오디오 텍스트 문서등 여러 종류가 있다. -하이퍼텍스트 기반으로(Hypertext) 데이터를 전송하겠다(Transfer) = 링크기반으로 데이터에 접속한다는 의미이다. 작동방식 HTTP는 서버/클라이언트 모델을 따른다. 클라이언트에.. 배열과 리스트 Array와 lIst 둘다 [] String[] str ArrayList str Array(배열) 여러 개의 데이터를 하나의 이름으로 그룹핑해서관리 List(리스트) 리스트도 배열과 같이 그룹핑해서 관리 Array(배열) 정해진 공간, 식별자(인덱스가 존재) List(리스트) 식별자(인덱스가 존재x), 앞의 요소가 삭제되면 새로 추가되는 요소가 그 공간에 저장될 수 있음 가장 큰 차이점 Array(배열)은 크기 할당이 필요하고, 리스트는 크기 할당할 필요가없다. 그래서 List는 .size() ArrayList는 뭘까?? List ArrayList LinkedList ArrayList는 Array(배열)와 List(리스트)의 장점을 합친 것 배열의 특성인 index로 식별자를 쓰는 것이 가능하고 리스트 .. Java에 대한 이해2 Java의 특징 - 기본 자료형을 제외한 모든 요소들이 객체로 표현된다. - 객체 지향 개념의 특징인 캡슐화, 상속, 다형성이 잘 적용된 언어이다. - Garbage Collector를 통한 자동적인 메모리 관리 - 멀티쓰레드(Multi-thread)를 지원 - 다양한 Open 라이브러리 존재 - OOP(객체지향언어): 부품에 해당하는 객체들을 먼저 만들고, 이것들을 하나씩 조립해 전체 프로그램을 개발하는 기법 캡슐화..? 클래스의 내부 변수와 메소드를 하나로 패키징하는 것 객체에 선언된 변수나 메소드가 구분없이 접근할 수 있으면 정상적인 객체라고 보기 어렵다. 비슷한 개념의 은닉화 정보 은닉은 객체의 내부 구현을 숨김으로써 객체가 반드시 정해진 메소드를 통해 상호작용하도록 유도한다. 캡슐화의 장점 객체.. 자바에 대한 이해 Java 특징 - 자바가 가상머신(JVM)만 설치하면 컴퓨터의 운영체제에 상관없이 작동한다(운영체제에 독립적) -운영체제에 독립적이다 Q.운영체제에 독립적이라면서 왜 설치할떄에는 운영체제에 맞춰서 설치해야할까? A.Java 어플리케이션은 운영체제나 하드웨어가 아닌 JVM(자바가상머신)과 통신한다. 내가 작성한 java코드를 JVM이 읽을 수 있게 하려면 Java compiler를 통해 JVM이 읽을 수 있는 형식으로 변환해야한다(바이트코드로 변환해야 한다.) -작성한 java코드를 jvm이 읽을 수 있게 하려면 java compiler가 변환해준다.(바이트코드) jvm이 읽을 수 있는 형식으로 -A.class 형식의 파일은 JVM이 읽을 수 있는 형식. 운영체제가 읽을 수 있는 형식이 아니다. -이를 운.. Day07 - 01(래퍼 클래스) public class Wrapper1 { public static void main(String[] args) { int num1 =100; // Integer num2 = new Integer(num1); //없어지거나 없어질예정 Integer num2 = num1; //많이 사용x (박싱) System.out.println(num1); System.out.println(num2); int num3 = num2.intValue(); //(언박싱) int num4 = num2; //(언박싱) 객체를 num4에 저장 literal표기법 System.out.println(num3); System.out.println(num4); // Integer num5 = new Integer(10); Integer .. Day07 1.래퍼 클래스(Wrapper Class) //기본형 속도빠름 //기본타입 stack에있음 주소저장x, 값이 저장 -기본형(primitive type)변수 데이터를 객체로 취급해야 할 경우 객체로 포장해주는 클래스 //stack주소저장 heap값저장 비교할때? -자바는 객체지향 언어지만 기본형이라는 예외를 둔 이유는 성능때문 //파이썬은 기본형x 래퍼 클래스의 필요한 이유 -기본형 변수는 값을 저장하고, 참조형 변수는 주소를 저장하기 때문 -컬렉션 프레임워크(자료구조)는 참조형 변수만을 다루기 때문 //자료찾을때 편한도구 -멀티쓰레딩에서 동기화를 지원하려면 참조형변수가 필요하기 때문 //동기(실행다하고 다음으로 넘어감 ex)티켓 동시에x),비동기(프로그램 진행하다가 로딩진행중에도 프로그램을 사용가능하게하.. 이전 1 2 3 4 5 다음