2013-04-13 52 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