代码注释很详细,希望对大家有帮助.注意:有些方法可以按照自己的思路去扩展