如何用另一个字符串替换字符串并将其插入Java中的下一行代码中

时间:2013-01-24 20:08:54

标签: java string replace

在我的程序运行时,我无法弄清楚如何用字符串替换字符串。 这甚至可能吗? 程序运行时,我想用另一个单词替换一个单词,然后继续从该行运行。

我怎么能这样做? 谢谢所有

hstring.replace("picstart", "up1");
g.drawPixmap(Assets.picstart , 128, 160);

3 个答案:

答案 0 :(得分:3)

您的代码看起来像这样。

if (condition) {
    g.drawPixmap(Assets.picstart , 128, 160);
} else {
    g.drawPixmap(Assets.up1 , 128, 160);
}

答案 1 :(得分:1)

String是不可变的,这意味着您必须将结果分配给变量:

hstring = hstring.replace(...);

答案 2 :(得分:1)

不要使用反射。假设您的资产代码处理您的图像,纹理或任何情况:

String hstring = "picstart";
// ... stuff happens
// that forces us to change hstring! ...
hstring = hstring.replace("up1"); // or you could just say hstring = "up1";
g.drawPixmap(Assets.getAssetFor(hstring), 128, 160);

然后在您的静态资产类中,您可以:

public PixelMap getAssetFor(String identifier) {
     if (identifier.equals("picstart") {
         return new PicStartPixelMap();
     }
     else if (identifier.equals("up1")) {
         return new UpOnePixelMap();
     }
}