2013-04-13 50 views
0

我真的不知道如何字的問題,因爲我真的不知道該怎麼辦呢的String []到蹦牀網上單串

我有兩個「的.java」文件

的CreateFile:

public void addRecords(String Package, String ClassName, String[] ListOfBoxes) 
{ 
    format.format("%s", "package " + Package + ";"\n"); 
    format.format("%s", "@SideOnly(Side.CLIENT)\n"); 
    format.format("%s", "public class " + ClassName + " extends ModelBiped\n"); 
    format.format("%s", "{\n"); 
    format.format("%s", " ModelRenderer " + ListOfBoxes + ";\n"); 
    format.format("%s", "}\n"); 

    } 

代碼我試圖運行

  createFile file = new createFile(); 
    file.openFile(); 
    String[] Boxes = {"test1", "test2", "test3"}; 
    file.addRecords("default", "ModelTest", Boxes);   
    file.closeFile(); 

這是輸出:

package net.minecraft.client.model; 
@SideOnly(Side.CLIENT) 
public class ModelTest extends ModelBiped 
{ 
    ModelRenderer [Ljava.lang.String;@3794d372; 
} 

這是我想

package net.minecraft.client.model; 
@SideOnly(Side.CLIENT) 
public class ModelTest extends ModelBiped 
{ 
    ModelRenderer test1; 
    ModelRenderer test2; 
    ModelRenderer test3; 
} 

這可能是很簡單,但我是個小白是java

在此先感謝

回答

0

嘗試此爲CREATEFILE:

public void addRecords(String Package, String ClassName, String[] ListOfBoxes) 
{ 
    format.format("%s", "package " + Package + ";"\n"); 
    format.format("%s", "@SideOnly(Side.CLIENT)\n"); 
    format.format("%s", "public class " + ClassName + " extends ModelBiped\n"); 
    format.format("%s", "{\n"); 
    for (String box : listOfBoxes) 
    { 
     format.format("%s", " ModelRenderer " + box + ";\n"); 
    } 
    format.format("%s", "}\n"); 

} 

不同的是,該代碼使得陣列中的每個元件,而代碼呈現整個陣列一氣呵成。

+0

謝謝,這個作品很好 – user1835502

1

您希望Arrays.deepToString方法。重寫相應的行中的addRecords方法是這樣的:

format.format("%s", " ModelRenderer " + Arrays.deepToString(ListOfBoxes) + ";\n"); 
+0

謝謝,雖然我擔心這可能會導致後面的問題,後來,我將使用相同的String []做'test1.addBox(int,int,int,int,int,int)',所以它將會是[test1,test2,test3] .addBox(int,int,int,int,int,int,int,int)我不認爲會起作用 – user1835502

+0

您沒有提供所有相關代碼,所以我可以不能肯定地說,但deepToString絕對不是你問題的原因。這可能是一個問題的唯一方法是,如果你發送內部null或數組deepToString-ed有空。 deepToString爲String數組所做的所有事情是,它將單個字符串數組「{first,second}」轉換爲一個字符串「[first,second]」。嘗試一下,看看自己。 – linski

+0

我相信你,但deepToString給我的格式不是我所需要的,謝謝你的建議,儘管 – user1835502