代码1
public class Program {
public static void main(String[] args) {
char[] aa = new char[] {'a','b'};
possibleStrings(3, aa,"");
char[] bb = new char[] {'|','&'};
possibleStrings(2, bb,"");
result(aa,bb); }
代码2
public static void possibleStrings(int maxLength, char[] alphabet, String curr)
{ //THIS CODE IS COMMON FOR STRING aa and bb.}
代码3
public static void result(char[] a,char[] b) {
//APPENDING BOTH THE STRING CHARACTER BY CHARACTER
char[] arrayA = a.toCharArray();
char[] arrayB = b.toCharArray();
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(sb.toString());
}
}
我正在尝试将字符串aa和bb从代码1传递到代码3.但是我正面临错误。 它显示如下:
Program.java:31: error: cannot find symbol char[] arrayA = a.toCharArray(); ^ symbol: method toCharArray() location: variable a of type char[] Program.java:32: error: cannot find symbol char[] arrayB = b.toCharArray(); ^ symbol: method toCharArray() location: variable b of type char[] 2 errors
我没有得到我错的地方。请帮帮我。
答案 0 :(得分:0)
在你的功能中:
public static void result(char[] a,char[] b) {
//APPENDING BOTH THE STRING CHARACTER BY CHARACTER
char[] arrayA = a.toCharArray();
char[] arrayB = b.toCharArray();
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(sb.toString());
}
}
您已经将char数组作为争论传递。所以你在行char[] arrayA = a.toCharArray();
中试图将char数组转换为char数组。而且这种方法不存在。