[心得] 从0开始 3.5 字串串接与循环

楼主: gasbomb (虚空雷神兽)   2019-12-05 16:35:06
虽然在 java 中串接字串很简单, 只要一直 + 就可以了
但是在循环还是要避免使用 + 来串接字串
为什么呢?
在之前的范例我们曾经写下这种程式码
pm.forEach((k, v) -> v.write("【闲聊】" + playerName + "说:" + input));
其实 + 是 java compiler 提供的语法糖
真正的程式展开之后是这样的
pm.forEach((k, v) -> v.write(new StringBuilder.append("【闲聊】")
.append(playerName)
.append("说:")
.append(input)
.toString()));
今天线上有 n 个使用者, 就要 new n 个 StringBuilder
虽然在这个年代 MUD 有几十个人上线就很多了
不过养成良好习惯还是很重要的, 所以在循环内串接字串时可以思考看看
有没有机会在循环外先把字串接好
像上面的例子就可以改成这样写
String message = "【闲聊】" + playerName + "说:" + input;
pm.forEach((k, v) -> v.write(message));

Links booklink

Contact Us: admin [ a t ] ucptt.com