目前,我使用如下代码段:
private void updateWidth() {
rowWidth=new int[]{
font.getWidth(MainClass.getMain().lang().getString("start"), 120)+20,
font.getWidth(MainClass.getMain().lang().getString("name")+": "+name+"I", 120)+20,
font.getWidth(MainClass.getMain().lang().getString("currentHigh"), 120)+20,
font.getWidth(MainClass.getMain().lang().getString("back"), 120)+20
};
}
但是个人而言,我真的不喜欢第2行。在我经常更新值的地方,创建一个新对象。
这真的好吗,还是我缺少一些明显的解决方案?
最佳答案
假设不能静态构造同一密钥(例如,由于name
来自某种配置信息),则创建代表该密钥的临时对象就可以了。
您可以通过创建一个实用程序方法来封装一些逻辑来减少声明:
private static int getWidth(String key) {
return font.getWidth(MainClass.getMain().lang().getString(key), 120)+20;
}
现在,您的数组可以如下初始化:
rowWidth=new int[]{
getWidth("start")
, getWidth("name" + ": " + name + "I")
, getWidth("currentHigh")
, getWidth("back")
};
关于java - Java数组更改内容,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44141648/