본문 바로가기
728x90

Java14

[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] 직렬화와 역직렬화 안녕하세요. 씨위드입니다. 저는 요즘 Kerberos 를 이용한 사용자 인증과 관련된 업무를 진행 중인데요. 프로젝트를 진행하며 transient이라는 키워드를 사용하게 되었습니다. 해당 키워드는 직렬화 과정에서 제외하고싶은 데이터에 사용하게 되는데요. transient이라는 키워드가 생소하신 분들도 있을 것 같아 키워드를 소개하며 추가로 이와 연관된 직렬화와 역직렬화에 대하여 알아보려 합니다. 먼저 자바의 직렬화(Serialization)와 역직렬화(Deserialize)의 개념에 대하여 알아볼까요? Serialization 먼저 일반적 의미의 직렬화란 데이터의 포맷을 변환하는 기술입니다. 자바에서 말하는 직렬화는 객체를 전송 가능한 형태로 변환하는 것을 의미합니다. 일반적으로는 시스템 내부에서 사용되.. 2023. 2. 21.
[Java] Immutable Object 안녕하세요. 씨위드입니다. 오늘은 불변객체(Immutable Object)의 정의와 특징 등에 대하여 알아보겠습니다. Immutable Object 란? 불변객체란 전체 수명동안 상태가 변경되지 않은 상태로 유지되도록 보장된 객체입니다. 가장 중요한 것은 객체 생성 이후 내부의 상태가 변하지 않다는 것입니다. 경우에 따라서는 내부에서 사용하는 속성이 변화해도 외부에서 그 객체의 상태가 변하지 않은 것처럼 보인다면 불변 객체로 보기도 합니다. 불변객체는 내부 상태를 변경하는 메서드를 제공하지 않거나 방어적 복사를 통해 데이터를 제공합니다. Java에서는 대표적으로 String, 래퍼클래스(Integer, Long, Double 등)가 있습니다. String을 조금 더 살펴볼까요? String str = ".. 2023. 2. 14.
728x90