Я не могу передать значения одной функции другой функции в Java.Как я могу сделать это правильно? - PullRequest
0 голосов
/ 05 июня 2018

Это код, над которым я работаю.

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.

В функции результата я пытаюсь добавить символьные строки символ за символом и получить комбинацию выходных данных, полученных в приведенных выше строках.

Но вывод, который я получаю, неверен.Я не знаю, где я иду не так.Пожалуйста, помогите мне.

1 Ответ

0 голосов
/ 05 июня 2018

Если я прав, здесь ошибка при передаче данных в функцию: possibleStrings(2, b,""); Замените их на: possibleStrings(2,'b',"");, поскольку это был символ, я думаю, он должен быть в одинарных кавычках.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...