我在这里得到了我的代码
static void snake(String u[][]){
for(int i=0; i<u.length; i++){
if(i%2==0){
for(int j=0; j<u[i].length; j++){
String asli = u[i][j];
System.out.print(asli+"");
}
}else
for(int j=u[i].length-1; j>=0; j--){
String asli = u[i][j];
System.out.print(asli+"");
}
}
}
我的代码是读取我之前创建的数组。它将从右到左读取蛇形路径中的数组,然后在下一行中从左到右读取,依此类推。
我将在我的代码中调用此方法,如下所示:
snake(matrix);
所以我之前创建的数组将继续使用此方法。
它会创建一个像“asdbasdbasdbsad”这样的输出,我想抓住它...... 我尝试过printstream但它没有用。 那个输出,我需要他们继续我的另一个代码。我无法让他们正确。 它是任何方法,而不是先将它们保存到文件中,然后在下一个方法中读取文件? 是否有任何不同的逻辑方法可用于制作类似的东西? 或者是否可以像我的代码一样将数组转换为字符串? 抱歉我的英语,英语不是我的母语。我将感激任何帮助,并感谢之前..
我使用npinti的代码,这是有效的。
static String ular(String u[][]){
StringBuilder code2 = new StringBuilder();
for(int i=0; i<u.length; i++){
if(i%2==0){
for(int j=0; j<u[i].length; j++){
String asli = u[i][j];
System.out.print(asli+"");
code2.append(asli);
//System.out.print(asli+"");
}
}else
for(int j=u[i].length-1; j>=0; j--){
String asli = u[i][j];
System.out.print(asli+"");
code2.append(asli);
//System.out.print(asli+"");
}
}
return code2.toString();
}
答案 0 :(得分:2)
而不是打印结果,返回它;
static String snake(String u[][]) {
StringBuilder builder = new StringBuilder();
for (int i = 0; i < u.length; i++) {
if (i % 2 == 0) {
for(int j = 0; j < u[i].length; j++) {
String asli = u[i][j];
builder.append(asli);
}
}
else
for (int j = u[i].length - 1; j >= 0; j--) {
String asli = u[i][j];
builder.append(asli);
}
}
}
return builder.toString();
}
答案 1 :(得分:1)
您可以采用return
或某些String
形式制作方法Collection
。
例如,你可以这样做:
static String snake(String u[][]){
StringBuilder sb = new StringBuilder();
for(int i=0; i<u.length; i++){
if(i%2==0){
for(int j=0; j<u[i].length; j++){
String asli = u[i][j];
System.out.print(asli+"");
sb.append(asli + ",");
}
}else
for(int j=u[i].length-1; j>=0; j--){
String asli = u[i][j];
System.out.print(asli+"");
sb.append(asli + ",");
}
}
return sb.toString();
}
这应该返回逗号分隔的String
,您可以稍后在程序中使用它,如下所示:
String[][] u = ...
String result = snake(u);
编辑:这是你可以采用的另一种方式:
static List<String> snake(String u[][]){
List<String> list = new ArrayList<String>();
for(int i=0; i<u.length; i++){
if(i%2==0){
for(int j=0; j<u[i].length; j++){
String asli = u[i][j];
System.out.print(asli+"");
list.add(asli);
}
}else
for(int j=u[i].length-1; j>=0; j--){
String asli = u[i][j];
System.out.print(asli+"");
list.add(asli);
}
}
return list;
}
你这样称呼它:
String[][] u = ...
List<String> moves = snake(u);