我无法在 java 中将一个函数的值传递给另一个函数.我怎样才能正确地做到这一点?



这是我正在处理的代码。

import java.io.*;
import java.util.*;    
public class Program {      
public static void main(String[] args) {
char[] a = new char[] {'0','1'};
possibleStrings(3, a,"");
char[] b = new char[] {'|','&'};
possibleStrings(2, b,"");          
result(a,b);   }
public static void possibleStrings(int maxLength, char[] alphabet, String curr) {    
if(curr.length() == maxLength) {
System.out.print(curr);
System.out.println();         
} else {
for(int i = 0; i < alphabet.length; i++) {
String oldCurr = curr;
curr += alphabet[i];
possibleStrings(maxLength,alphabet,curr);
curr = oldCurr;
}}}
public static void result(char[] arrayA,char[] arrayB) {     
StringBuilder sb = new StringBuilder();
int i = 0;
while( i < arrayA.length && i < arrayB.length){
sb.append(arrayA[i]).append(arrayB[i]);
++i;
}
for(int j = i; j < arrayA.length; ++j){
sb.append(arrayA[j]);
}
for(int j = i; j < arrayB.length; ++j){
sb.append(arrayB[j]);
}            
System.out.println("o/p="+sb.toString()); 
}}

从主函数,我将值传递给可能的字符串,我正在尝试将此处生成的字符串收集回同一组输入的主函数,即possibleStrings(3, a,"");possibleStrings(2, b,"");,然后将字符串 a 和 b 传递给result函数。

在结果函数中,我试图逐个字符附加字符串,并获得在上述字符串中获得的输出的组合。

但是我得到的输出是错误的。我不知道我哪里出错了。请帮帮我。

如果我是对的,那么在将数据传递给函数时是一个错误:possibleStrings(2, b,"");将其替换为:possibleStrings(2,'b',"");因为它是一个字符,我认为它应该在单引号中。

最新更新