Java 利用方法之間的調(diào)用編寫無(wú)限循環(huán)程序
當(dāng)某個(gè)執(zhí)行遞歸調(diào)用的方法沒(méi)有附加條件判斷時(shí),可能會(huì)造成無(wú)限循環(huán)的錯(cuò)誤情況。因此, 當(dāng)我們編寫遞歸方法時(shí),需要加人一些判斷條件,用于判斷是否需要執(zhí)行遞歸調(diào)用,并且在一定 條件下終止方法的遞歸調(diào)用。
遞歸代碼的好處是,和非遞歸方法相比,遞歸方法代碼邏輯更清晰,代碼可讀性更高;其缺 點(diǎn)是由于層層的方法嵌套,會(huì)有額外的內(nèi)存開(kāi)銷,以及可能發(fā)生的無(wú)限循環(huán)災(zāi)難。這些年計(jì)算機(jī) 硬件性能不斷升級(jí),大部分情況下遞歸程序的效率問(wèn)題已經(jīng)得到解決,因此鼓勵(lì)用遞歸方法實(shí)現(xiàn)程序思想。
除了方法遞歸調(diào)用容易出現(xiàn)無(wú)限循環(huán)的問(wèn)題外,方法之間互相調(diào)用也可能會(huì)出現(xiàn)無(wú)限循環(huán)。
點(diǎn)擊加載更多評(píng)論>>