import java.io.*;public class digui{
public static void main(String args[]){
key a = new key(System.in);
a.pars();
}
}class key{
int k = 0;
void key (String a[]){
String[] b;
for(int i=0; i<a.length; i++){
b[i] = a[i];
}
}
void pars(int k){
if(a.length == k){
System.out.println(a[0]);
}
else{
for(int i=k; i<a.length; i++){
int a = a[i];
a[i] = a[k];
a[k] = a;
this.pars(k+1);
for(int t=0; t<a.length; t++){
System.out.println(a[t]);
}
}
}
}
}
public static void main(String args[]){
key a = new key(System.in);
a.pars();
}
}class key{
int k = 0;
void key (String a[]){
String[] b;
for(int i=0; i<a.length; i++){
b[i] = a[i];
}
}
void pars(int k){
if(a.length == k){
System.out.println(a[0]);
}
else{
for(int i=k; i<a.length; i++){
int a = a[i];
a[i] = a[k];
a[k] = a;
this.pars(k+1);
for(int t=0; t<a.length; t++){
System.out.println(a[t]);
}
}
}
}
}
如果你想把a[]拷贝给b[]直接用Arrays里面的方法就行了,况且两个数组里都是局部的,你在pars里用,能用吗?
System.in传进去一个数组,不太合适吧。
……
很多地方需要修改。