【发布时间】:2018-06-12 22:16:25
【问题描述】:
我正在创建许多对象,其中包含从数组中读取的详细信息。它们的其中一个实例变量将有一个标准格式,我希望它部分地是一个升序数字。具体来说,我正在创建一个 Location 对象的负载,我希望这些对象具有“Flat 1”、“Flat 2”等的描述。
我想知道在为String 赋值时是否有一种简单的方法来执行加法。剥离到相关部分,我的代码是:
int size = locations.size();
Location l;
for (int i=0; i<size; i++){
l = new Location ("Flat " + i + 1); //LINE A
addLocation(l);
}
//several bits of code have been removed and swapped around here, I realise
//that that snippet doesn't really perform anything useful
但是,Java 将 LINE A 中的两个“+”符号解释为连接,这意味着我得到“Flat 01”、“Flat 11”、“Flat 21”等。
显然我可以改变循环的工作方式,但我很好奇是否可以在 myString = value + 2 类型语句中执行计算?
【问题讨论】:
-
您是否尝试过在
i + 1周围使用括号?请注意,表达式将从左到右进行计算。
标签: java string concatenation