본문 바로가기

Programming/JAVA4

[Java] 문자열(String) 비교 방법 ==, equals() 차이 서비스에서 문자열을 비교하던 중 같은 값을 비교했는데 false가 나오는 상황이 발생했습니다. 원인을 찾아보니 == 연산자로 문자열을 비교했기 때문이었습니다. == 연산자는 객체의 주소를 비교하여 일치하는지 확인하고, equals() 메서드는 객체의 내용을 비교하여 같은지 확인하는 메서드입니다. 객체의 주소값 문자열의 내용은 같아도 리터럴로 선언하였는지, new 연산자로 선언하였는지에 따라 주소(참조)값이 다를 수 있습니다. String str1 = "strong";//리터럴로 선언 String str2 = "strong"; String str3 = new String("strong");//new 연산자로 선언 String str4 = new String("strong"); 문자열 리터럴을 사용하는 경우.. 2023. 6. 19.
[Java] 배열 요소의 중복을 제거하는 방법 배열 요소의 중복을 제거하는 방법에 대해 알아보겠습니다. 1. Set 사용 Set은 중복 요소를 허용하지 않는 자료구조입니다. 따라서 배열을 Set으로 변환한 뒤 다시 Set을 배열로 변환하는 방법으로 중복을 제거할 수 있습니다. import java.util.Arrays; import java.util.HashSet; import java.util.Set; public class Temp { public static void main(String[] args) { String[] array = {"A", "B", "C", "B", "D", "A", "E"}; Set set = new HashSet(Arrays.asList(array)); String[] uniqueArray = set.toArray(n.. 2023. 6. 15.
[Java] Arrays.asList() | Arrays.asList() Arrays.asList(배열)을 통해서 배열을 ArrayList로 변환할 수 있습니다. 하지만 자주 사용하는 ArrayList와는 다른 점이 있습니다. Arrays.asList() 메서드로 변환된 List는 java.util.ArrayList 클래스의 ArrayList가 아니라 java.util.Arrays 클래스의 inner 클래스인 ArrayList입니다. java.util.Arrays.ArrayList는 배열과 같이 고정 크기를 가지기 때문에 요소의 추가,제거 등의 작업으로 크기 변경이 불가능합니다. 그래서 add(), remove() 메서드를 지원하지 않고, get(), set() 등의 메서드를 지원합니다. 만약 Arrays.asList()로 반환된 List에 a.. 2022. 8. 29.
[Java] equalsIgnoreCase() / equals() / toUpperCase() / toLowerCase() equalsIgnoreCase() equalsIgnoreCase()는 두 문자열을 대소문자의 구분 없이 비교하고 동일한지 여부를 true/false로 반환합니다. 예를 들어 "Milk"와 "milk"를 비교하면 true를 반환합니다. 문법 문자열1.equalsIgnoreCase(문자열2) 예시 public static void main(String[] args) { String str1 = "Milku"; String str2 = "milku"; String str3 = "MILKU"; //equalsIgnoreCase() System.out.println(str1.equalsIgnoreCase(str2));//true System.out.println(str1.equalsIgnoreCase(str3)).. 2022. 8. 26.