以下哪个代码更好,为什么?
第一种方式:
String[] animals = "lion tiger zebra".split(" ");
for (String animal : animals) {
System.out.println(animal);
}
第二种方式:
for (String animal : "lion tiger zebra".split(" ")) {
System.out.println(animal);
}
代码lion tiger zebra".split(" ")
是否会在循环重复或第一次执行时执行。
答案 0 :(得分:1)
没有区别。无论哪种方式,拆分操作只会执行一次。
答案 1 :(得分:1)
第一种方法需要内存用于变量的整个执行方法,或者如果它在类中,那么直到类被赋予GC。
第二种方法将在循环执行后留下GC的分割字符串的内存。
回答你的问题Will the code lion tiger zebra".split(" ") be executed all the time the loop is repeated or just the first time.
它只会完成一次。
答案 2 :(得分:1)
这两段代码之间没有什么区别。但是,第一个选项更具可读性,但它们(除非操作非常长)将花费大约相同的时间来执行。