본문 바로가기
728x90

자바13

[Java] 배열, 리스트에서 요소 개수 찾기 안녕하세요. 오늘은 배열 또는 리스트에서 원하는 요소의 개수를 찾는 방법에 대해 포스팅하려고 합니다. 바로 Collections.frequency() 함수입니다.Collections.frequency(Collection c, Object o)frequency 함수는 Collection 객체에서 Object와 같은 값이 몇번 포함되어 있는지 횟수를 찾아 반환합니다. public static int frequency(Collection c, Object o) { int result = 0; Iterator var3; Object e; if (o == null) { var3 = c.iterator(); while(var3.hasNext()) { e = var3.next(); if (e == null) { ++.. 2023. 10. 15.
[Java] 정규표현식, Lookaround(Lookahead & Lookbehind) 안녕하세요~ 오늘은 정규표현식에 대한 글로 찾아왔습니다. 정규표현식은 Regular Expression 줄여서 정규식, RegExp 라고 표현하기도 합니다. 사실 개발할 때 정규식을 쓰긴 해도 보통 패턴이 일치 여부 확인 용도로 사용하곤 했는데요. 오늘은 일치하는 텍스트의 앞, 뒤를 매칭할 때 사용할 수 있는 Lookaround에 대하여 알아보려고 합니다. 보편적인 정규표현식의 사용은 아래 링크를 참조해주세요. https://ko.wikipedia.org/wiki/%EC%A0%95%EA%B7%9C_%ED%91%9C%ED%98%84%EC%8B%9D 정규 표현식 - 위키백과, 우리 모두의 백과사전위키백과, 우리 모두의 백과사전. 노란색 강조 부분은 다음 정규식을 사용했을 때 매치된 것이다. 스티븐 클레이니는.. 2023. 10. 15.
[Java] 얕은 복사 & 깊은 복사 & 방어적 복사 안녕하세요. 씨위드입니다. 오늘은 자바의 복사에 대하여 알아보겠습니다. 얕은 복사(Shallow Copy)란? 간단히 말하면 주소값을 복사하는 것입니다. 원본 객체를 참조하여 원본 객체에 종속적입니다. 주소값을 복사하는 방식이기 때문에 참조하고 있는 실제 데이터는 같습니다. 해서 원본 혹은 사본 변경 시 둘 다 변경되게 됩니다. 이해를 돕기 위해 간단한 코드를 작성하였습니다. 두 객체의 주소값이 같은 것을 보실 수 있습니다. 주소값을 복사하는 방식이기 때문에 빠르다는 장점을 가집니다. 이번엔 실제 데이터를 살펴볼까요? 첫 번째 프린트문에서 당연히 두 객체의 값은 같습니다. 그럼 두 개의 배열 중 하나의 값을 바꾸면 어떻게 될까요? 같은 주소값을 참조하고 있기 때문에 객체 두 개의 값 모두 변한 것을 보실.. 2023. 2. 13.
[Java] 객체 - 클래스 안녕하세요. 씨위드입니다. 오늘은 객체지향의 중요한 개념인 클래스에 대하여 알아보겠습니다. 클래스 클래스는 데이터(변수)와 함수의 집합입니다. 변수는 단순하게 말하면 데이터를 저장하는 기능을 수행합니다. 그렇다면 함수는 어떤 기능을 할까요? 함수는 주로 데이터를 이용한 작업을 수행합니다. 해서 객체지향 언어에서는 데이터와 함수를 하나의 클래스에 정의해 함께 다룰 수 있도록 하였죠. 사용자 정의 타입 클래스 우리가 자주 사용하는 String이나 Map, ArrayList 같은 자료형도 사실은 하나의 클래스입니다. String 클래스로 예를 들자면 클래스 내부에 문자열을 저장할 수 있는 배열과 문자열을 쉽게 다룰 수 있는 함수들이 정의되어 있죠. 우리도 자바의 String처럼 서로 관련된 변수를 묶어 '사용.. 2023. 2. 6.
728x90