Computer >> 컴퓨터 >  >> 프로그램 작성 >> Java

여러 하위 문자열로 분할하는 Java 프로그램

<시간/>

이 기사에서는 여러 하위 문자열로 분할하는 방법을 이해할 것입니다. 문자열은 하나 이상의 문자를 포함하고 큰따옴표(" ")로 묶인 데이터 유형입니다. 문자열의 일부 또는 하위 집합을 부분 문자열이라고 합니다.

아래는 동일한 데모입니다 -

입력이 다음과 같다고 가정 -

Input string: JVM

원하는 출력은 -

The substring list printed as an ArrayList :
[J, JV, JVM, V, VM, M]

The sub-strings after splitting is:
(1) "J"
(2) "JV"
(3) "JVM"
(4) "V"
(5) "VM"
(6) "M"

알고리즘

Step 1 - START
Step 2 - Declare a string namely input_string, an array list namely string_list.
Step 3 - Define the values.
Step 4 - Iterate through the length of the string using two nested loops, and add every character from every string to another list. This is the result to be displayed on console.
Step 5 - To print this substring as ArrayList, initialize a counter, and iterate through the result and increment the counter after every iteration. This gives number of substrings in the string.
Step 6 - Display the result
Step 7 - Stop

예시 1

여기에서 모든 작업을 'main' 기능 아래에 묶습니다.

import java.io.*;
import java.util.ArrayList;
public class SubString {
   public static void main(String[] args) {
      System.out.println("Required packages have been imported");
      String input_string = "JVM";
      System.out.println("The string is defined as: " +input_string);
      int i, j;
      int string_length = input_string.length();
      ArrayList<String> string_list = new ArrayList<String>();
      for (i = 0; i < string_length; i++) {
         for (j = i + 1; j <= string_length; j++) {
            string_list.add(input_string.substring(i, j));
         }
      }
      ArrayList<String> result = string_list;
      System.out.println( "\nThe substring list printed as an ArrayList : ");
      System.out.println(result);
      System.out.println( "\nThe sub-strings after splitting is: ");
      int count = 1;
      for (String it : result) {
         System.out.println("(" + count + ") \"" + it + "\"");
         count++;
      }
   }
}

출력

Required packages have been imported
The string is defined as: JVM

The substring list printed as an ArrayList :
[J, JV, JVM, V, VM, M]

The sub-strings after splitting is:
(1) "J"
(2) "JV"
(3) "JVM"
(4) "V"
(5) "VM"
(6) "M"

예시 2

여기에서 객체 지향 프로그래밍을 나타내는 함수로 작업을 캡슐화합니다.

import java.io.*;
import java.util.ArrayList;
public class SubString {
   public static ArrayList<String> split_string(String input_string) {
      int i, j;
      int string_length = input_string.length();
      ArrayList<String> string_list = new ArrayList<String>();
      for (i = 0; i < string_length; i++) {
         for (j = i + 1; j <= string_length; j++) {
            string_list.add(input_string.substring(i, j));
         }
      }
      return string_list;
   }
   public static void main(String[] args) {
      System.out.println("Required packages have been imported");
      String input_string = "JVM";
      System.out.println("The string is defined as: " +input_string);
      ArrayList<String> string_list = SubString.split_string(input_string);
      System.out.println( "\nThe substring list printed as an ArrayList : ");
      System.out.println(string_list);
      System.out.println( "\nThe sub-strings after splitting is: ");
      int count = 1;
      for (String it : string_list) {
         System.out.println("(" + count + ") \"" + it + "\"");
         count++;
      }
   }
}

출력

Required packages have been imported
The string is defined as: JVM

The substring list printed as an ArrayList :
[J, JV, JVM, V, VM, M]

The sub-strings after splitting is:
(1) "J"
(2) "JV"
(3) "JVM"
(4) "V"
(5) "VM"
(6) "M"