Languages 61

[Java]Map의 요소를 반복하는 다양한 방법

Map의 요소를 반복하는 다양한 방법 ⚡️keySet을 통해 순환 Map map = new HashMap(); for (String key : map.keySet()) { map.get(key); } ⚡️entrySet을 통해 순환 Map map = new HashMap(); for (Map.Entry entry : map.entrySet()) { String key = entry.getKey(); String value = entry.getValue(); } ⚡️iterator을 통해 순환 Map map = new HashMap(); Iterator keys = map.keySet().iterator(); while (keys.hasNext()) { String key = keys.next(); map..

Languages/Java 2023.01.26

[Java]상속(Inheritance)과 super, super() 완벽 이해하기

super, super() 완벽 이해하기 Java 코드를 보다보면 super 키워드는 자주 등장합니다. 이번 포스팅에서는 super, super()에 대해 다뤄보려고 합니다. 하지만 위의 키워드를 이애하기 위해서는 객체지향프로그래밍 언어인 Java에 상속에 대해 먼저 알아야 합니다. 상속(Inheritance)이란? 상속(Inheritance)은 기존 클래스의 멤버변수와 메서드를 이어 받아 기능을 추가하거나 재정의하여 새로운 클래스를 정의하는 것을 의미합니다. 위의 그림을 보면 부모 클래스로 부터 상속받아 생성된 자식 클래스가 부모 클래스를 포함하고 있는 것을 볼 수 있으며, 부모 클래스에 없는 추가된 멤버를 정의한 것을 확인할 수 있습니다. 상속(Inheritance) 예제 class Parent { ..

Languages/Java 2023.01.19

[Java]삼항 연산자(조건 연산자)로 불필요한 IF 문 줄이기

삼항연산자란? 삼항 연산자는 피연산자의 갯수가 3개인 조건부 연산자이다. 기본 구문은 아래 그림을 보면 확인할 수 있습니다. 이 연산자는 if-else 구문을 압축한 형태이며, 간결한 코드를 작성할 수 있습니다. 조건식의 결과 가 True인 경우 두 번째 항의 값 또는 연산식이 반환되며 반대로 조건식의 결과가 False인 경우 세 번째 항의 값 또는 연산식이 반환됩니다. IF -ELSE 구문 기본 형태 if (조건식) { System.out.println("조건식은 참입니다."); } else { System.out.println("조건식은 거짓입니다."); } 위의 IF-ELSE 구문은 조건식의 결과에 따라 다음 프로세스를 진행합니다. 하지만 이렇게 작성한 코드는 5줄 입니다. 이러한 구문에서 삼항 연..

Languages/Java 2023.01.18

[Javascript]화살표 함수(Arrow Function) 사용하기

화살표 함수(Arrow Function) 사용하기 이번 포스팅에서 다룰 화살표 함수(Arrow Function)는 ES6부터 함수를 만들 수 있는 새로운 문법으로 등장했습니다. 이러한 문법이 왜 등장하였고, 원래의 함수 생성 방식과 어떤 점이 다른지에 대해 알아보도록 하겠습니다. 일반 함수 생성 방식 //1번 function moonstar() { console.log("티스토리 블로그입니다.") }; //2번 var moonstar = function() {console.log("티스토리 블로그입니다.")} 화살표 함수(Arrow Function) 사용 var moonstar = () => console.log("티스토리 블로그입니다."); 화살표 함수(Arrow Function)를 사용하면 기존의 함..

[Java]클래스와 객체 그리고 인스턴스와의 차이

클래스(Class) 객체 지향이라는 프로그래밍 패러다임을 가진 JAVA에서는 객체(Object)를 중심으로 프로그래밍을 구성합니다. 객체(Object)의 동작이나 속성들을 구체화 시킨 것이 객체 지향 프로그래밍이기 때문에 객체(Object)는 정말 중요한 요소입니다. 이러한 객체를 만들어 낼 수 있는 틀이 바로 클래스(class)입니다. 클래스(class)라는 틀 안에는 속성(변수), 동작(메서드)으로 구성되어있습니다. 아래 예시를 보며 간단한 클래스(class)를 만들어 보겠습니다. 클래스(Class) 생성 public class Animal { //클래스명 : Animal //속성 private String name; //이름 private int lifespan; //수명 //동작 public vo..

Languages/Java 2023.01.17

[Computer Vision]OpenCV를 이용한 이미지 전처리(이진화, 그레이스케일, 블러링)

⚡️ OpenCV(Open Source Computer Vision) 개요 오픈 소스 컴퓨터 비전 라이브러리 중 하나로 실시간으로 이미지, 영상 프로세싱에 중점을 둔 라이브러리이다. 과거에는 C언어만을 지원하였지만, 현재 C++, Python에서도 활용이 가능하다. 필자도 현재 Python으로 랩핑된 OpenCV를 활용하고 있으며, 특히 딥러닝 분야에 특화된 Python이기에 필자도 현재 자주 사용하고 있다. 이미지도 일종의 데이터로 분류되며, 데이터를 더 의미 있게 만들기 위해서는 전처리 과정을 필수로 가지게 됩니다. 각각의 이미지는 픽셀을 갖고 있으며, 각각의 픽셀은 8비트로 구성된 각각의 데이터를 지니고 있습니다. 이미지 데이터처리의 기본적인 전처리 과정인 그레이스케일에 대하여 알아보고, 더 나아가..

Languages/Python 2023.01.16

[JAVA]ArrayList의 동작 및 내부 구현

2022.11.30 - [JAVA] - [JAVA] 콜렉션이란? [JAVA] 콜렉션이란? JAVA의 컬렉션(collection>이란 데이터의 집합을 의미하며 컬렉션 프레임워크(collection framework)란 다수의 데이터를 쉽고과적으로 처리할 수 있는 표준화된방법을 제공하는 클래스의 집합을 의미한다 mooonstar.tistory.com 2023.01.07 - [JAVA] - [JAVA]LinkedList와 ArrayList [JAVA]LinkedList와 ArrayList LinkedList와 ArrayList 2022.11.30 - [JAVA] - [JAVA] 콜렉션이란? [JAVA] 콜렉션이란? JAVA의 컬렉션(collection>이란 데이터의 집합을 의미하며 컬렉션 프레임워크(colle..

Languages/Java 2023.01.13

[JAVA]equals()와 hashcode()는 무엇인가?

equals()와 hashcode()는 무엇인가? 위의 질문은 자바 프로그래머를 준비하는 사람들이라면 한 번씩 질문 받는 문제이지 않을까 싶다. 실제 위 질문은 기업의 기술 면접에서도 자주 등장한다고 한다. 그래서 이번 포스팅에서는 위의 질문에 대한 답을 찾아 볼까한다. equals()와 hashcode() 우리가 정의하고 사용하는 모든 객체는 equals()와 hashcode()를 반드시 상속받는다. 그 이유는 무엇일까? 그 이유는 equals()와 hashcode()는 모든 객체의 최상위 객체인 Object에 정의되어 있기 때문이다. 이제 각각의 메서드에 대해 자세히 알아보자. equals() //Object - equals public boolean equals(Object obj) { return..

Languages/Java 2023.01.12

[JAVA]로깅에 System.out.println()을 사용하지 않는 이유

System.out.println()을 사용하면 안되는 이유 JAVA 프로그래밍을 하다 보면 로깅을 하기 위해 사용하는 입출력 구문은 단연 System.out.println()일 것이다. 필자도 개발자가 되고, 실제 운영 중인 시스템에 대한 개발을 진행할 때 System.out.println() 정말 많이 사용하였고, 가장 많이 지적받는 이유 중 하나였습니다. 그래서 이번 포스팅에서는 왜 이 구문을 사용하지 말하야 하는지에 대해 정리해보도록 하겠습니다. 우선 로깅(logging)에 대해 알아보도록 하겠습니다. 로깅(logging)이란? 실제 운영하는 시스템에서 예상치 못한 문제가 발생하였을 때 개발자는 문제를 찾아야 합니다. 이러한 문제를 빠르게 해결하기 위해서는 날짜, 시간, 로직에 대한 정보가 필요합..

Languages/Java 2023.01.12

[JAVA]Iterator란?

Iterator란? 반복이라는 사전적인 의미가 있는 Iterator에 대하여 알아보도록 하겠습니다. JAVA에서 Iterator는 무엇을 반복하는 것일까? Java의 Iterator Iterator란 Java의 컬렉션(Collection)에 저장된 요소들을 순회하는 인터페이스입니다. Iterator의 이해를 위해서는 컬렉션(Collection)이 무엇인지 알아야 합니다. 아랫글을 우선 읽고 와주시면 감사하겠습니다! 2022.11.30 - [JAVA] - [JAVA] 콜렉션이란? [JAVA] 콜렉션이란? JAVA의 컬렉션(collection>이란 데이터의 집합을 의미하며 컬렉션 프레임워크(collection framework)란 다수의 데이터를 쉽고과적으로 처리할 수 있는 표준화된방법을 제공하는 클래스의 ..

Languages/Java 2023.01.09