将字符串分成N个相等部分的Java程序

1 说明

在这里,我们的任务是将字符串S分为n个相等的部分。如果无法将字符串分成n个相等的部分,我们将输出一条错误消息,否则所有部分都需要作为程序的输出进行打印。

要检查字符串是否可以分为N个相等的部分,我们需要将字符串的长度除以n,然后将结果分配给变量char。

如果char变成浮点值,则无法对字符串进行分割,否则将运行for循环遍历字符串并在每个char间隔对字符串进行分割。

2 算法思路

  • 步骤1:开始
  • 步骤2: 定义str =“ aaaabbbbcccc”
  • 步骤3:定义len
  • 步骤4: SET n = 3
  • 步骤5: SET TEMP = 0
  • 步骤6: chars = len / n
  • 步骤7:定义String [] equalstr。
  • 步骤8:如果(len%n!= 0),
    则进行PRINT(“字符串不能分成相等的部分”),
    否则转到步骤9
  • 步骤9: SET i = 0。
  • 步骤10:直到i <len,将步骤11重复到步骤14
  • 步骤11: 定义子字符串部分。
  • 步骤12: equalstr [temp] = part
  • 步骤13:温度=温度+ 1
  • 步骤14: i = i +字符
  • 步骤15: 列印n
  • 步骤16: SET i = 0。重复步骤17至步骤18直到i <等长
  • 步骤17: 打印等值线[i]
  • 步骤18: i = i + 1
  • 步骤19:结束

3 程序实现

/**
 * 一点教程网: http://www.yiidian.com
 */
public class DivideString {  
    public static void main(String[] args) {  
          String str = "aaaabbbbcccc";  
  
        //Stores the length of the string  
        int len = str.length();  
        //n determines the variable that divide the string in 'n' equal parts  
        int n = 3;  
        int temp = 0, chars = len/n;  
        //Stores the array of string  
        String[] equalStr = new String [n];  
        //Check whether a string can be divided into n equal parts  
        if(len % n != 0) {  
            System.out.println("Sorry this string cannot be divided into "+ n +" equal parts.");  
        }  
        else {  
            for(int i = 0; i < len; i = i+chars) {  
                //Dividing string in n equal part using substring()  
                String part = str.substring(i, i+chars);  
                equalStr[temp] = part;  
                temp++;  
            }  
    System.out.println(n + " equal parts of given string are ");  
            for(int i = 0; i < equalStr.length; i++) {  
                System.out.println(equalStr[i]);  
                }  
            }  
        }  
}  

以上代码输出结果为:

3 equal parts of given string are
aaaa
bbbb
cccc

 

热门文章

优秀文章