본문 바로가기
728x90

string2

[JAVA] String.isBlank()와 isEmpty()의 차이 : 실무에서 실수하기 쉬운 빈 문자열 검증 자바 개발을 하다 보면 가장 빈번하게 마주치는 데이터 타입은 단연 String입니다. 사용자로부터 입력받은 값이 비어있는지, 혹은 의미 없는 공백만 들어있는지 확인하는 작업은 데이터 무결성을 지키는 첫걸음이죠. 하지만 Java 11에서 isBlank()가 도입된 이후, 많은 개발자가 기존의 isEmpty()와 정확히 어떤 차이가 있는지 혼동하곤 합니다. 오늘은 이 두 메서드의 내부 로직을 파헤치고, 실무 상황별 최적의 선택 기준을 제시해 드리겠습니다.1. isEmpty() vs isBlank() 정의와 등장 배경두 메서드는 모두 문자열이 '비어 있음'을 확인하지만, 그 '비어 있음'에 대한 관점이 다릅니다.isEmpty() (Java 6 도입): 문자열의 길이가 0인지만을 체크합니다. 즉, ""(Empt.. 2026. 1. 24.
[JAVA] String, StringBuilder, StringBuffer의 결정적 차이와 선택 기준 자바 개발을 하면서 가장 빈번하게 다루는 데이터 타입 중 하나가 바로 문자열(String)입니다. 하지만 자바에는 문자열을 처리하기 위해 String, StringBuilder, StringBuffer라는 세 가지 선택지가 존재합니다. 단순히 '문자열이니까 String을 쓴다'는 생각은 대규모 트래픽이나 복잡한 알고리즘 환경에서 치명적인 성능 저하를 초래할 수 있습니다. 이 글에서는 각 클래스의 내부 구조와 메모리 관리 방식, 그리고 실무에서 상황별로 어떤 클래스를 선택해야 하는지에 대한 가이드를 제시합니다.1. 불변성(Immutability) vs 가변성(Mutability)가장 먼저 이해해야 할 핵심 개념은 불변성입니다.String: 불변(Immutable)의 미학String 객체는 한 번 생성되면 .. 2026. 1. 17.
728x90