Lamda
lamda里面不能有变量
java实现时没有传引用,而是直接copy了数据。也就是里外两个变量实际上是两个名字和值相同,但各自独立的东西。
如果该数据在内部类的函数里可以修改,就会出现里外不一致,于是会露馅。因此java干脆规定这种变量必须是final的,不能改。
Last updated
Was this helpful?
java实现时没有传引用,而是直接copy了数据。也就是里外两个变量实际上是两个名字和值相同,但各自独立的东西。
如果该数据在内部类的函数里可以修改,就会出现里外不一致,于是会露馅。因此java干脆规定这种变量必须是final的,不能改。
Last updated
Was this helpful?