String []到单个字符串

时间:2013-04-13 11:31:46

标签: java 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的菜鸟

提前致谢

2 个答案:

答案 0 :(得分:1)

您需要Arrays.deepToString方法。重写addRecords方法中的相应行,如下所示:

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

答案 1 :(得分: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");

}

不同之处在于,此代码呈现数组中的每个元素,而您的代码将一次性呈现整个数组。