淘先锋技术网

首页 1 2 3 4 5 6 7

在循环中改变吗?

不改变,static int i = 1;该语句只在进入循环的第一次时被执行,后面就不会再执行了。这就是static的语义。static 静态的 只分配内存一次,初始化一次。

所以第一次:i+=1所以输出了2

第二次:static int i = 1;是没有作用的,i+=4,所以输出了6

第三次:同理,i+=36,输出了42

退出循环:输出了局部变量i的值3(注意,这里不是静态变量)

java静态属性没初始化,在循环中改变吗