與我前面所讀的《Java7基礎(chǔ)教程》相比,此書(shū)不適合自學(xué),更適合作為教材使用。
雖然此書(shū)完整覆蓋了Java的知識(shí)點(diǎn)和數(shù)據(jù)結(jié)構(gòu)的基礎(chǔ)問(wèn)題,并且對(duì)每個(gè)部分都做了基本說(shuō)明。但是因?yàn)闆](méi)有深入展開(kāi),對(duì)于以自學(xué)的方式閱讀此書(shū)的讀者,如果沒(méi)有基礎(chǔ)的會(huì)感覺(jué)內(nèi)容太多太雜,學(xué)習(xí)過(guò)程會(huì)覺(jué)得摸不著頭腦;但是對(duì)于基礎(chǔ)較好的讀者又會(huì)覺(jué)得書(shū)中的描述有種隔靴搔癢的感覺(jué),讀完一遍沒(méi)啥收獲。
但是如果作為教材則具有自己的優(yōu)勢(shì),作者從Java語(yǔ)言入手,一步步推進(jìn)到數(shù)據(jù)結(jié)構(gòu),使Java語(yǔ)言和數(shù)據(jù)結(jié)構(gòu)的學(xué)習(xí)自然的結(jié)合在一起,從而避免了在許多學(xué)校教學(xué)過(guò)程中因?yàn)榉謩e設(shè)置兩門(mén)課程而帶來(lái)的脫節(jié)問(wèn)題。例如:許多同學(xué)都是先學(xué)語(yǔ)言,再學(xué)數(shù)據(jù)結(jié)構(gòu)。可能會(huì)遇到一個(gè)學(xué)期學(xué)Java語(yǔ)言,另一個(gè)學(xué)期學(xué)數(shù)據(jù)結(jié)構(gòu),結(jié)果Java的語(yǔ)法早就在考試后還給老師了,從而使學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)的過(guò)程比較困難。更糟糕的是學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)時(shí)使用的編程語(yǔ)言不是Java,結(jié)果就算學(xué)完數(shù)據(jù)結(jié)構(gòu)了依然不會(huì)使用Java來(lái)解決數(shù)據(jù)結(jié)構(gòu)中的許多經(jīng)典問(wèn)題。
但是,如果老師使用這個(gè)教材,可以根據(jù)自己的需要調(diào)整講解的深度和需要展開(kāi)的內(nèi)容,還可以幫助學(xué)生直接利用Java語(yǔ)言的特性來(lái)解決某些數(shù)據(jù)結(jié)構(gòu)的問(wèn)題,比如:Java的泛型和集合類來(lái)實(shí)現(xiàn)數(shù)據(jù)結(jié)構(gòu)的鏈表,使學(xué)習(xí)很有針對(duì)性,也更容易產(chǎn)生興趣。