프로그래밍/Java

    valueOf() 와 parseInt() 의 차이점

    valueOf() 와 parseInt() 의 차이점

    Integer 라는 래퍼클래스(Wrapper Class)가 가지고 있는 메서드들이다. 이 메서드 두 개는 String을 int로 바꿀수 있다. 하지만 차이점이라면 반환값에 있다. Integer.valueOf("10") 은 Integer 타입으로 반환하고, Integer.parseInt("10") 은 int 타입으로 반환한다. Integer 타입은 기본형 타입(Primitive Type)인 int형의 박싱(boxing)한 결과이다. int형을 객체로 쓰기위한 객체이며, 래퍼 클래스로 감싸고 있는 기본형 타입의 값이라고 볼 수 있다. 그럼 하나씩 자세하게 살펴보자. 🤔 Integer.parseInt() 란 무엇인가? 통합개발환경(IDE)인 이클립스(Eclipse)에서 마우스에 갖다대면 위처럼 나온다. Ret..

    컬렉션 프레임워크(Collections Framework)

    컬렉션 프레임워크(Collections Framework)

    컴퓨터가 효율적으로 자료를 처리하기 위해서는 문제를 자료구조 측면에서 분석하고 구성하여 더 좋은 프로그램을 작성해야 한다. 즉, 프로그래머가 문제를 보다 효율적으로 해결하기 위해서는 자료구조에 대한 개념과 활용능력을 가지고 있어야 한다는 말이다. 🤔 자료구조(Data Structure)란 무엇인가? 우리는 엄청난 양의 자료 속에서 살아가고 있다. 이런 자료를 효율적으로 표현하고 저장하고 처리하여 사용할 수 있도록 하는 것이 자료구조이다. 형태에 따른 자료구조 정수, 실수, 문자, 문자열 등의 데이터 타입에 해당하는 단순구조 단순구조와 일대일 관계를 가지는 선형구조 자료간의 앞뒤 관계가 일대일로 고정되어 있는 자료구조 일대다, 다대다 관계의 비선형구조 자료 간에 선형구조가 아닌 계층(hierarchical..

    Java 언박싱 형변환

    Java 언박싱 형변환

    Java의 언박싱(unboxing) 형변환 Java 8 Language Specification 5.1.8 Unboxing Conversion Chapter 5. Conversions and Contexts class Point { int x, y; } interface Colorable { void setColor(int color); } class ColoredPoint extends Point implements Colorable { int color; public void setColor(int color) { this.color = color; } } final class EndPoint extends Point {} class Test { publ docs.oracle.com 언박싱(unbox..

    함수형 인터페이스(Functional Interface)란 무엇인가?

    함수형 인터페이스(Functional Interface)란 무엇인가?

    https://ssdragon.tistory.com/14 람다식이란? 람다식(Lambda Expressions) 메서드를 하나의 식(expression)으로 표현한 것! 이름이 없는 메서드! 메서드를 람다식으로 표현하면 메서드 이름과 반환값이 없어지므로 익명 함수(anonymous function)라고도 부 ssdragon.tistory.com 위 글의 연장선이다. 함수형 인터페이스에 대해 설명하다보면 람다식이 나오니까 꼭 먼저 읽어보자. 🤔 함수형 인터페이스(Functional Interface) 란 무엇인가? 이것은 하나의 추상 메서드만을 갖는 인터페이스(Interface)이다. 그래야지 람다식과 인터페이스의 메서드가 1:1로 연결될 수 있기 때문이다!! 이 추상 메서드의 매개변수의 개수와 타입, 리..

    람다식이란?

    람다식이란?

    람다식(Lambda Expressions) 메서드를 하나의 식(expression)으로 표현한 것! 이름이 없는 메서드! 메서드를 람다식으로 표현하면 메서드 이름과 반환값이 없어지므로 익명 함수(anonymous function)라고도 부른다. 특히 메서드가 1번만 사용되고 메서드 길이가 짧은 경우 매우 유용하다. 자바에서 메서드(함수)는 혼자서 생존할 수 없다. 객체가 아니기 때문에 클래스도 만들어야 하고, 객체도 생성해야 쓸 수 있다. 하지만 람다식으로 인해 변수처럼 스스로 존재하며 매개변수로 전달하거나 결과로 반환될 수 있다. 즉, 람다식으로 메서드(함수)는 객체로 취급된다는 말이다. 람다식으로 작성하기 메서드를 람다식으로 바꿔보자 먼저 메서드 이름과 반환 타입을 제거하고 매개변수와 몸통 { } 사..

    JAVA 8은 왜 이렇게 많이 쓸까?

    JDK 1.8버전 또는 Java8 (자바8)버전은 왜 이렇게 많이 쓸까? 전에 썼던 글에도 있었지만 아무래도 지원기간의 힘도 큰 것 같다. https://ssdragon.tistory.com/7?category=990759

    Java 통합 개발 환경(IDE)

    Java 통합 개발 환경(IDE)

    자바를 메모장 같은 간단한 편집기로도 개발할 수 있지만 이것은 IDE에 비하면 매우 불편하다. 통합 개발 환경은 자바 프로그램을 편리하면서도 빠르게 개발할 수 있는 환경을 제공한다. 자바를 배울 때 보통 Eclipse(이클립스) IDE를 다운받아 설치하고, 나중에 숙련되면 다른 IDE인 IntelliJ(인텔리제이)를 사용하기도 한다. IDE (통합 개발 환경) 이란? Integrated Development Environment 로써 코딩, 디버그, 컴파일, 배포 등 프로그램 개발에 관련된 모든 작업을 하나의 프로그램 안에서 처리하는 환경을 제공하는 소프트웨어이다. 즉, 개발할 때 사용되는 도구들을 모아놓은 장소라고 생각하자. 자바에서 사용하는 대표적인 IDE (통합 개발 환경) 1. eclipse (이..

    Java(자바) API 문서 다운받기

    Java(자바) API 문서 다운받기

    보통 구글에 Java 버전 api를 치면 바로 다음과 같이 나온다. 사이트는 다음과 같다. https://docs.oracle.com/javase/8/docs/api/ Java Platform SE 8 docs.oracle.com 자바에서 제공하는 클래스 라이브러리(Java API)를 잘 사용하기 위해서는 Java API 공식 문서가 필수적이다. 보통 구글에서 여러 사람들이 잘 정리한 글도 있지만 거기에만 의존해서는 안된다. 🤔 잘 정리된 블로그 글이 학습하기도 좋은데 왜 굳이 공식문서를 보는 방법을 알아야 할까? 개발자라는 직업이 새로운 언어와 기술, 기능들이 계속 추가되어 꾸준히 학습해야하는데 그 때마다 한국어로 잘 번역해서 쓴 블로그 글을 기다릴 수는 없지 않은가? 그렇기 때문에 공식문서도 어디서 ..