Java 에서 문자열의 특정 길이 확인하는 방법

JavaBeginner
지금 연습하기

소개

이 랩에서는 Java 에서 문자열의 길이가 특정 길이인지 확인하는 방법을 배우게 됩니다. 문자열의 길이를 얻기 위해 length() 메서드를 사용하는 것부터 시작하여 관련된 기본적인 단계를 다룰 것입니다. 그런 다음 이 길이를 예상 값과 비교하는 방법과, 오류를 방지하기 위해 잠재적인 null 문자열을 처리하는 방법을 배우게 됩니다. 이 랩을 마치면 Java 애플리케이션에서 강력한 문자열 길이 검사를 수행하는 방법에 대한 확실한 이해를 갖게 될 것입니다.

length() 를 사용하여 문자열 길이 가져오기

이 단계에서는 length() 메서드를 사용하여 Java 에서 문자열의 길이를 찾는 방법을 배우겠습니다. length() 메서드는 Java 의 내장 함수로, 문자열의 문자 수를 반환합니다.

  1. 먼저, ~/project 디렉토리에 StringLength.java라는 새 Java 파일을 생성해 보겠습니다. 왼쪽의 파일 탐색기에서 마우스 오른쪽 버튼을 클릭하고 "새 파일"을 선택한 다음 StringLength.java를 입력하여 이 작업을 수행할 수 있습니다.

  2. 편집기에서 StringLength.java 파일을 열고 다음 코드를 추가합니다.

    public class StringLength {
        public static void main(String[] args) {
            String greeting = "Hello, LabEx!";
            int length = greeting.length();
            System.out.println("The length of the string is: " + length);
        }
    }

    새로운 부분을 살펴보겠습니다.

    • String greeting = "Hello, LabEx!";: 이 줄은 String 유형의 greeting이라는 변수를 선언하고 "Hello, LabEx!" 값을 할당합니다.
    • int length = greeting.length();: 여기서 length() 메서드를 사용합니다. greeting 문자열에 대해 length()를 호출하면 문자 수 (공백 및 구두점 포함) 를 반환합니다. 이 숫자는 length라는 정수 변수에 저장됩니다.
    • System.out.println("The length of the string is: " + length);: 이 줄은 "The length of the string is: " 텍스트 다음에 length 변수에 저장된 값을 출력합니다.
  3. 파일을 저장합니다 (Ctrl+S 또는 Cmd+S).

  4. 이제 WebIDE 하단의 터미널을 열고 ~/project 디렉토리에 있는지 확인합니다. 필요한 경우 cd ~/project를 사용할 수 있습니다.

  5. javac 명령을 사용하여 Java 프로그램을 컴파일합니다.

    javac StringLength.java

    오류가 없으면 출력이 표시되지 않습니다.

  6. java 명령을 사용하여 컴파일된 Java 프로그램을 실행합니다.

    java StringLength

    다음 출력을 볼 수 있습니다.

    The length of the string is: 13

    이 출력은 length() 메서드가 문자열 "Hello, LabEx!"의 문자 수를 정확하게 계산하여 13 임을 확인합니다.

Java 에서 length() 메서드를 사용하여 문자열의 길이를 성공적으로 찾았습니다!

길이를 예상 값과 비교

이전 단계에서 문자열의 길이를 얻는 방법을 배웠습니다. 이제 이 지식을 사용하여 문자열의 길이를 예상 값과 비교해 보겠습니다. 이는 프로그래밍에서 흔히 사용되는 작업으로, 예를 들어 비밀번호가 최소 길이 요구 사항을 충족하는지 확인하는 데 사용됩니다.

이전 단계에서 생성한 StringLength.java 파일을 수정하겠습니다.

  1. WebIDE 편집기에서 StringLength.java 파일을 엽니다.

  2. 비교를 포함하도록 main 메서드를 수정합니다. 기존 main 메서드를 다음 코드로 바꿉니다.

    public class StringLength {
        public static void main(String[] args) {
            String password = "mysecretpassword";
            int minLength = 8; // Minimum required length
    
            int passwordLength = password.length();
    
            System.out.println("Password: " + password);
            System.out.println("Password length: " + passwordLength);
            System.out.println("Minimum required length: " + minLength);
    
            if (passwordLength >= minLength) {
                System.out.println("Password meets the minimum length requirement.");
            } else {
                System.out.println("Password does NOT meet the minimum length requirement.");
            }
        }
    }

    변경 사항을 살펴보겠습니다.

    • 문자열 변수 이름을 password로 변경하고 다른 값을 할당했습니다.
    • 최소 요구 길이를 저장하기 위해 새로운 정수 변수 minLength를 도입했습니다.
    • 이전과 마찬가지로 length() 메서드를 사용하여 passwordLength를 계산합니다.
    • if 문을 추가했습니다. if 문은 passwordLengthminLength보다 크거나 같은지 확인합니다.
    • 조건 (passwordLength >= minLength) 이 true 이면 if 블록 내부의 코드가 실행되어 성공 메시지를 출력합니다.
    • 조건이 false 이면 else 블록 내부의 코드가 실행되어 실패 메시지를 출력합니다.
  3. 파일을 저장합니다 (Ctrl+S 또는 Cmd+S).

  4. 터미널을 열고 ~/project 디렉토리에 있는지 확인합니다.

  5. 수정된 Java 프로그램을 컴파일합니다.

    javac StringLength.java

    다시, 출력이 없으면 컴파일이 성공했음을 의미합니다.

  6. 프로그램을 실행합니다.

    java StringLength

    현재 passwordminLength에 따라 다음과 유사한 출력을 볼 수 있습니다.

    Password: mysecretpassword
    Password length: 16
    Minimum required length: 8
    Password meets the minimum length requirement.

    코드에서 password 문자열을 8 자 미만 (예: "short") 으로 변경하고, 파일을 저장하고, 다시 컴파일하고, 다시 실행하여 else 블록이 실행되는 것을 확인해 보세요.

이제 if 문을 사용하여 문자열의 길이를 특정 값과 비교하는 방법을 배웠습니다!

길이 검사 시 Null 문자열 처리

이전 단계에서는 실제 문자 값을 가진 문자열로 작업했습니다. 그러나 프로그래밍에서 문자열 변수는 때때로 null이라는 특수한 값을 가질 수 있습니다. null 값은 변수가 어떤 객체도 참조하지 않음을 의미합니다. null 문자열에 대해 length()와 같은 메서드를 호출하려고 하면 프로그램이 NullPointerException으로 인해 충돌합니다.

이 단계에서는 길이를 얻으려고 시도하기 전에 null 문자열을 안전하게 처리하는 방법을 배우겠습니다.

  1. WebIDE 편집기에서 StringLength.java 파일을 엽니다.

  2. null에 대한 검사를 포함하도록 main 메서드를 수정합니다. 기존 main 메서드를 다음 코드로 바꿉니다.

    public class StringLength {
        public static void main(String[] args) {
            String potentialString = null; // This string is null
            int minLength = 5; // Minimum required length
    
            System.out.println("String to check: " + potentialString);
            System.out.println("Minimum required length: " + minLength);
    
            if (potentialString != null) {
                int stringLength = potentialString.length();
                System.out.println("String length: " + stringLength);
    
                if (stringLength >= minLength) {
                    System.out.println("String meets the minimum length requirement.");
                } else {
                    System.out.println("String does NOT meet the minimum length requirement.");
                }
            } else {
                System.out.println("Cannot check length: The string is null.");
            }
        }
    }

    변경 사항을 살펴보겠습니다.

    • 변수 이름을 potentialString으로 변경하고 초기 값을 null로 설정했습니다.
    • 외부 if 문을 추가했습니다: if (potentialString != null). 이는 potentialString 변수가 null이 아닌지 확인합니다.
    • 길이를 얻는 코드 (potentialString.length()) 와 후속 길이 비교는 이제 이 if 블록 내부에 있습니다. 이렇게 하면 문자열이 null이 아닌 경우에만 length()가 호출됩니다.
    • 외부 if 문의 else 블록은 문자열이 null인 경우를 처리하여 길이를 확인할 수 없음을 나타내는 메시지를 출력합니다.
  3. 파일을 저장합니다 (Ctrl+S 또는 Cmd+S).

  4. 터미널을 열고 ~/project 디렉토리에 있는지 확인합니다.

  5. 수정된 Java 프로그램을 컴파일합니다.

    javac StringLength.java

    출력이 없으면 컴파일이 성공했음을 의미합니다.

  6. 프로그램을 실행합니다.

    java StringLength

    potentialStringnull이므로 다음 출력을 볼 수 있습니다.

    String to check: null
    Minimum required length: 5
    Cannot check length: The string is null.

    이제 potentialString의 값을 "Java"와 같은 null 이 아닌 문자열로 변경하고, 저장하고, 다시 컴파일하고, 다시 실행해 보세요. 길이 검사가 수행되는 것을 볼 수 있습니다.

    String potentialString = "Java"; // This string is not null

    다시 컴파일하고 실행한 후:

    String to check: Java
    Minimum required length: 5
    String length: 4
    String does NOT meet the minimum length requirement.

    이는 프로그램이 충돌하는 것을 방지하기 위해 메서드를 호출하기 전에 null 문자열을 안전하게 처리하는 방법을 보여줍니다.

요약

이 Lab 에서는 내장된 length() 메서드를 사용하여 Java 에서 문자열의 길이를 결정하는 방법을 배웠습니다. Java 프로그램을 만들고, length() 메서드를 사용하여 문자열의 문자 수를 얻고, 프로그램을 컴파일하고 실행하여 출력을 확인하는 연습을 했습니다. 이 기본적인 기술은 Java 프로그래밍에서 다양한 문자열 조작 및 유효성 검사에 필수적입니다.