重构,利用tailMap和HeadMap的不同来简化代码