본문 바로가기

개발언어37

코틀린 익히기 3 - 조건문과 반복문 코틀린에서의 프로그램  흐름제어 방법에 대해 알아보겠습니다. 흐름 제어에는 조건문과 반복문이 사용됩니다. 범위 연산자 in조건문과 반복문에서 자주 사용되는 범위 연산자 in입니다. 변수가 시작값과 마지막값 사이 범위에 있는지 확인하여 true / false를 리턴합니다. 변수명 in 시작값..마지막값// 변수 >= 시작값 && 변수 = 시작값 && 변수  조건문if조건식이 성립할 경우 수행할 문장을 {} 블록 안에 적습니다. 조건에 해당하지 않을 경우 else if 조건식을 검사합니다. else if 조건식의 개수에는 제한이 없습니다. 모든 조건식에 해당하지 않을 때는 else {} 블록 안의 문장이 수행됩니다.else if와 else 블록은 생략할 수 있습니다.if (조건식) { ...} else if.. 2023. 9. 19.
자바 쉽게 배우기 22 - 입출력 스트림 스트림 스트림은 물줄기를 의미합니다. 입출력 스트림 또한 입출력을 위한 흐름을 의미합니다. 데이터는 출발지에서 목적지로 향합니다. 이 향하는 길을 이어주는 것이 입출력 스트림입니다. 프로그램이 입력을 받을 때 입력 스트림을, 프로그램에서 출력을 할 때 출력 스트림을 사용합니다. 입출력 스트림은 java.io 패키지에서 사용할 수 있습니다. 스트림은 바이트 단위의 전송이 이뤄지는 바이트 기반 스트림과 문자 단위의 전송이 이뤄지는 문자 기반 스트림으로 구분됩니다. 바이트 기반 스트림 바이트 단위의 데이터 전송이 이뤄지는 스트림입니다. 입력 : InputStream 바이트 기반 입력 스트림의 최상위 클래스입니다. 주요 메서드 메서드 설명 abstract int read () 1byte를 읽고 읽은 byte를 .. 2023. 9. 19.
자바 쉽게 배우기 21 - 람다 잠시 쉬어가는 글로 람다에 대해서 설명드릴까 합니다. 사실 람다가 자바에 도입된 것은 jdk1.8부터(2014년)입니다. 비교적 최근에 추가된 것이죠. 람다가 도입되면서 객체 지향 언어인 자바가 함수형 언어로의 성격까지 갖게 되었습니다. ❓ 함수형 언어란 무엇인가요? 함수형 언어는 함수형 기능들을 사용해 변수의 사용을 최소화한 프로그래밍에 사용되는 언어입니다. 람다 람다가 무엇이기에 함수형 언어로의 성격을 더해준 것일까요? 람다란 메서드를 하나의 식으로 표현한 것입니다. 람다를 사용하면 메서드를 간략한 방식으로 표현할 수 있습니다. 또한 람다식을 매개변수로 전달하거나 메서드의 결과로 반환하는 것도 가능합니다. 메서드를 람다식으로 변환하기 일반 메서드 반환타입 메서드명 (매개변수) { ... return .. 2023. 9. 18.
자바 쉽게 배우기 20 - 스레드 스레드 스레드를 이해하기 위해서는 프로세스를 알아야 합니다. 자바 쉽게 배우기 1 - 자바란 무엇인가? 에서 멀티 스레드와, 프로세스, 스케쥴링에 대해 설명드렸었는데 기억하시는 분이 있으실까요? - 자바의 멀티스레드는 시스템과 관계없이 구현이 가능합니다. - 멀티 스레드 라이브러리를 제공합니다. - 여러 스레드에 대한 스케쥴링을 자바 인터프리터가 담당합니다. ❓ 멀티스레드란 무엇인가요? - 멀티스레드는 한 프로세스 안에서 여러 개의 일이 동시에 진행되는 것을 의미합니다. ❓ 스케쥴링은 무엇인가요? - 스케쥴링이란 프로세스가 생성되어 실행될 때 필요한 자원들을 할당하는 작업을 뜻합니다. ❓ 프로세스란 무엇인가요? - 일반적으로 실행 중인 프로그램을 의미하고, 작업(Job) 혹은 태스크(Task)라고 불리기.. 2023. 9. 15.
코틀린 익히기 2 - 자료형, 연산자 코틀린을 공부하기 전 자바(JAVA)의 변수와 연산자를 먼저 공부합시다. 자바 쉽게 배우기 2 - 변수이번 글에서는 본격적으로 JAVA언어에 대해 배워보겠습니다. 변수에 대해 알아봅시다. 변수 Variable 1. 변수의 개념 프로그래밍 언어를 처음 공부하시는 분들이라면 변수라는 단어를 봤을 때 수학devdharu.tistory.com 자바 쉽게 배우기 3 - 연산자연산자 Operator 프로그래밍에서 연산자는 연산을 지시하는 부호를 뜻합니다. 피연산자는 연산의 대상으로 연산자의 양옆에 위치하게 됩니다. 예시 ) 4 + 5 4, 5 : 피연산자 + : 연산자 연사자의 종류devdharu.tistory.com 자료형변수의 선언과 초기화val(var) 변수명 : 자료형 = 값val(var) 변수명 = 값va.. 2023. 2. 27.
코틀린 익히기 1 - 코틀린이란 무엇인가? 1. 코틀린(Kotlin) 공부의 첫걸음 코틀린은 자바 언어의 단점을 보완한 프로그래밍 언어입니다. 자바언어 공부를 선행하는 것이 필수는 아니지만 자바 > 코틀린 순서로 공부하시는 것이 이해가 쉽습니다. 자바를 공부할 때 코틀린에서는 생략되는 코드들의 원형을 알 수 있기 때문입니다. 코틀린은 IntelliJ IDEA를 개발한 젯브레인즈(JetBrains)에서 개발했습니다. 이후 2017년에 구글에서 안드로이드 공식 언어로 지정되었죠. 코틀린은 애플리케이션 개발을 위해 사용됩니다. 애플리케이션은 모바일 앱뿐만 아니라 응용 소프트웨어를 총칭합니다. 최근 많은 기업들이 모바일 개발에서 자바 대신 코틀린을 100% 사용하고 있기에 코틀린을 배우시는 것은 탁월한 선택입니다. 2. 코틀린의 특징 자바와 완벽한 호환.. 2023. 2. 25.
자바 쉽게 배우기 19 - 열거형 (Enum) jdk 1.5부터 추가된 열거형은 관련된 여러 상수를 한 데 모아 정의할 때 사용하는 타입입니다. 자바의 열거형 타입을 사용하면 상수의 값 비교 시 타입까지 비교합니다. 또한 열거형의 상수 값을 바꿀 때 기존의 소스를 다시 컴파일하지 않아도 된다는 장점이 있습니다. 열거형 선언과 사용 선언 enum 열거형이름 { 상수1, 상수2, ... , 상수n } 열거형 이름은 첫 글자를 대문자로 하는 것이 관례입니다. 상수는 모두 대문자로 작성하고, 여러 단어로 구성된 경우 단어 사이를 밑줄_로 연결합니다. 선언된 상수들은 순서에 따라 0부터 1씩 증가하는 값을 가집니다. 선언된 상수들은 하나하나가 모두 객체입니다. enum 열거형이름 { 상수1(값1), 상수2(값2), ... , 상수n(값n); // 하나의 상수.. 2023. 2. 21.
자바 쉽게 배우기 18 - 지네릭스 지네릭스, 제네릭스 (Generics) 이번 글에서는 지네릭스에 대해 알아보겠습니다. 사실 이전에 컬렉션 프레임워크에서 지네릭스를 한 번 언급했던 적이 있습니다. 추후에 설명하겠다고 하고 넘어왔었는데요. 바로 이번 글에서 설명드립니다. 제네릭이라고도 불리는 지네릭스는 jdk 1.5부터 도입되었습니다. 타입을 미리 지정하지 않고 컴파일할 때 체크할 수 있도록 하는 기능입니다. 미리 타입을 지정해 두면 타입을 형변환하거나 체크해야 하는 번거로움이 있습니다. 지네릭스를 사용하면 이와 같은 부담에서 벗어날 수 있습니다. 지네릭스는 클래스와 메서드에 선언할 수 있습니다. 어떻게 선언하고 사용하는지 살펴봅시다. 1. 지네릭 클래스 지네릭스는 대부분 Type의 첫 글자 T를 사용해 표시하지만 다른 기호를 사용해도 상.. 2023. 2. 20.
자바 쉽게 배우기 17 - Arrays Arrays 클래스 배열을 다루는 Arrays 클래스에 대해 알아봅시다. Arrays는 java.util패키지의 속하는 클래스입니다. Arrays 클래스의 메서드는 전부 static 메서드이므로 Arrays.메서드명()을 사용해 호출할 수 있습니다. 복사 리턴타입 메서드명 설명 배열 copyOf(배열) 배열을 복사하여 새로운 배열로 반환 배열 copyOfRange(배열, int from, int to) 배열의 일부를 복사하여 새로운 배열로 반환 (from 이상 to 미만) 채우기 리턴타입 메서드명 설명 void fill(배열, 채울 값) 배열의 모든 요소를 지정한 값으로 채움 void setAll(배열, 함수형 인터페이스를 구현한 객체 or 람다식) 배열의 요소들을 객체, 혹은 람다식에 맞게 채움 정렬과.. 2023. 2. 14.
자바 쉽게 배우기 16 - 컬렉션 프레임워크(3) : Map, Iterator 이전글 보러 가기 자바 쉽게 배우기 14 - 컬렉션 프레임워크(1) : List 컬렉션 프레임워크 컬렉션 프레임워크는 배열처럼 다수의 데이터를 한 묶음으로 보관, 처리할 수 있는 구조를 의미합니다. 배열보다 많은 기능을 가지고 있어 자주 사용됩니다. jdk1.2에 등장했 devdharu.tistory.com 자바 쉽게 배우기 15 - 컬렉션 프레임워크(2) : Set, Queue 이전글 보러 가기 자바 쉽게 배우기 14 - 컬렉션 프레임워크(1) : List 컬렉션 프레임워크 컬렉션 프레임워크는 배열처럼 다수의 데이터를 한 묶음으로 보관, 처리할 수 있는 구조를 의미합니다. 배 devdharu.tistory.com 인터페이스 특징 List 순서가 있는 데이터의 집합으로 순서로 구분이 가능하기 때문에 데이.. 2023. 2. 10.
자바 쉽게 배우기 15 - 컬렉션 프레임워크(2) : Set, Queue 이전글 보러 가기 자바 쉽게 배우기 14 - 컬렉션 프레임워크(1) : List 컬렉션 프레임워크 컬렉션 프레임워크는 배열처럼 다수의 데이터를 한 묶음으로 보관, 처리할 수 있는 구조를 의미합니다. 배열보다 많은 기능을 가지고 있어 자주 사용됩니다. jdk1.2에 등장했 devdharu.tistory.com 인터페이스 특징 List 순서가 있는 데이터의 집합으로 순서로 구분이 가능하기 때문에 데이터의 중복을 허용합니다. 구현 클래스 : ArrayList, LinkedList, Stack, Vector 등 Set 순서가 없는 데이터의 집합으로 List와 달리 데이터의 중복을 허용하지 않습니다. 구현 클래스 : HashSet, TreeSet 등 Map 키(key)와 값(vallue)의 쌍(pair)으로 이루.. 2023. 2. 8.
자바 쉽게 배우기 14 - 컬렉션 프레임워크(1) : List 컬렉션 프레임워크 컬렉션 프레임워크는 배열처럼 다수의 데이터를 한 묶음으로 보관, 처리할 수 있는 구조를 의미합니다. 배열보다 많은 기능을 가지고 있어 자주 사용됩니다. jdk1.2에 등장했으며 자바는 컬렉션 프레임워크를 위한 다양한 인터페이스와 클래스들을 제공하고 있습니다. 인터페이스와 클래스들은 java.util 패키지에 포함되어 있으며 핵심 인터페이스는 List, Set, Map입니다. 사용하려면 해당 클래스를 import 해주어야 합니다. 컬렉션 프레임워크의 큰 틀은 모두 인터페이스로 설계되어 있고 이를 구현한 클래스들을 인스턴스화해 사용합니다. 각 인터페이스와 클래스들의 주요 메서드 위주로 알아봅시다. 인터페이스 특징 List 순서가 있는 데이터의 집합으로 순서로 구분이 가능하기 때문에 데이터의.. 2023. 2. 3.