Java 生成后返回位字符串数组,而不只是打印

Java 生成后返回位字符串数组,而不只是打印,java,arrays,bitstring,Java,Arrays,Bitstring,这是Geeksforgeks的代码,它生成并打印n位的位字符串,但我想知道,除了打印数组,我如何存储数组的值或返回它,以便在main方法中使用值 import java.util.*; class GFG { // Function to print the output static void printTheArray(int arr[], int n) { for (int i = 0; i < n; i++) { System.o

这是Geeksforgeks的代码,它生成并打印n位的位字符串,但我想知道,除了打印数组,我如何存储数组的值或返回它,以便在main方法中使用值

import java.util.*; 

class GFG 
{ 

// Function to print the output 
static void printTheArray(int arr[], int n) 
{ 
    for (int i = 0; i < n; i++) 
    { 
        System.out.print(arr[i]+" "); 
    } 
    System.out.println(); 
} 

// Function to generate all binary strings 
static void generateAllBinaryStrings(int n, 
                            int arr[], int i) 
{ 
    if (i == n) 
    { 
        printTheArray(arr, n); 
        return; 
    } 

    // First assign "0" at ith position 
    // and try for all other permutations 
    // for remaining positions 
    arr[i] = 0; 
    generateAllBinaryStrings(n, arr, i + 1); 

    // And then assign "1" at ith position 
    // and try for all other permutations 
    // for remaining positions 
    arr[i] = 1; 
    generateAllBinaryStrings(n, arr, i + 1); 
} 

// Driver Code 
public static void main(String args[]) 
{ 
    int n = 4; 

    int[] arr = new int[n]; 

    // Print all binary strings 
    generateAllBinaryStrings(n, arr, 0); 
} 
} 

// This code is contributed by 
// Surendra_Gangwar 
import java.util.*;
GFG类
{ 
//函数打印输出
静态无效打印阵列(int-arr[],int-n)
{ 
对于(int i=0;i
  • 更改返回类型
  • 添加返回语句
  • 像这样:

    // Function to generate all binary strings 
    static int[] generateAllBinaryStrings(int n, 
    //     ^^^^^ change return type
                                int arr[], int i) 
    { 
        if (i == n) 
        { 
            printTheArray(arr, n); 
            return; 
        } 
    
        // First assign "0" at ith position 
        // and try for all other permutations 
        // for remaining positions 
        arr[i] = 0; 
        generateAllBinaryStrings(n, arr, i + 1); 
    
        // And then assign "1" at ith position 
        // and try for all other permutations 
        // for remaining positions 
        arr[i] = 1; 
        generateAllBinaryStrings(n, arr, i + 1); 
    
        return arr;
    //  ^^^^^^^^^^^ add return statement
    } 
    

    我这样做了,但它只返回1。我认为您应该尝试更改代码。我们毕竟不是一个代码编写服务。