java - 如果字符串是数组,则在两个对中查找字符串组合的有效方法

标签 java

这就是我目前所拥有的。

package testproject;

public class Combinations{

      public Combinations(){

        String str_arr[]={"a","b","c"};
        GenCombinations(str_arr);
      }




      public void GenCombinations(String[] str_arr){

        System.out.println("Generating All possible Combinations for  the following "+str_arr.length+" strings.");        

        for(int i=0;i<str_arr.length;i++)
         {
            System.out.print(str_arr[i]+" ");
         }
        System.out.println("\n------------------------------------------");

        /*COMBINATIONS OF LENGTH ONE*/
        for(int i=0;i<str_arr.length;i++)
            System.out.println(str_arr[i]);        

        /*COMBINATIONS OF LENGTH TWO*/
        for(int i=0;i<str_arr.length;i++)
         {
           for(int j=0;j<str_arr.length;j++)
             {
                System.out.println(str_arr[i]+""+str_arr[j]);                   
             }
         } 

        /*COMBINATIONS OF LENGTH THREE*/
        for(int i=0;i<str_arr.length;i++)
         {
          for(int j=0;j<str_arr.length;j++)
           {
            for(int k=0;k<str_arr.length;k++)
             {  
                System.out.println(str_arr[i]+""+str_arr[j]+""+str_arr[k]);                      
             }
           }
         }
      } 


      public static void main(String[] args){

        new Combinations();
      }
    }

任何建议将不胜感激..

最佳答案

如果您只需要两个字符串的组合,那么您的代码基本上可以尽可能高效,但需要注意以下事项:

  • 您需要确保输入数组不包含重复项。

  • 如果输入数组中的字符串长度不尽相同,您可能需要检查输出数组中的重复项。

关于java - 如果字符串是数组,则在两个对中查找字符串组合的有效方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7616989/

相关文章:

java - 使用http将数据从android发送到php

java - 使用 gmail 上下文小工具访问附件

java - 抽象对象的组合模式

java - 如何调用位于不同WAR文件中的jsp

java - 从 perl 调用 java 类

java - 当 keystore 文件通过 Web 应用程序动态更改时,无法正常工作 ssl 连接

java - Android 项目和 Android APP 上的 Jar Lib

Windows 系统上的 Java 应用程序作为 USB 外设运行

java - 如何使用sphinx 4将自己的语言模型添加到java程序中

java - 无法使用 IntelliJ 解析 Git 存储库文件中的符号