public static void transit(String s){
int[][] arr = new int[s.length()][8];
int[] Arr=new int[8];
int sum=0;
for (int i=0;i<s.length();i++) {
int n = (int) s.charAt(i) - 48;
for (int j = 0; n / 2.0 >= 0.5; j++,sum++) {
arr[i][j]=n%2;
n = n / 2;
System.out.print(arr[i][j]);
}
System.out.print(" ");
}
}
for(int i=0;i<s.length;i++){
for(int j=sum-1;j>=0;j--){
sout(arr[i][j])
}
}
结果达不到预期效果
想要System.out.print(arr[i][j]);的输出结果反一下如:实际输出:110001 期望输出:100011
public static void transit(String s){
int[][] arr = new int[s.length()][8];
StringBuffer sb=new StringBuffer();
for (int i=0;i<s.length();i++) {
int n = (int) s.charAt(i) - 48;
for (int j = 0; n / 2.0 >= 0.5; j++) {
arr[i][j]=n%2;
n = n / 2;
sb.append(arr[i][j]);
}
sb.append(" ");
}
String str=sb.toString();
char[] ch=str.toCharArray();
for (int i=ch.length-1;i>=0;i--){
System.out.print(ch[i]);
}
}
int[][] arr = new int[s.length()-1][];不定义数组大小就报错
这个你指定你的数组内容大小,否则就不要用数组;