并不矛盾.现在完成时表示过去的动作对现在的影响,强调的是现在.一般过去时强调的是过去.现在完成时属于现在的时态范畴,一般过去时属于过去的时态范畴.如:
I have swept the floor.这句话不是强调我“过去”扫了地,而是强调“现在”地面是干净的,它的意思与The floor is clean now一模一样.只不过是换了一种表达法而已,它是借用“过去”的swept这个动作来表达现在的状态.
I swept the floor.则单纯指“过去”我扫了地,不涉及现在.
Have you got a dictionary?是现在完成时,它强调的是“现在”你有一本词典吗?它是借用“过去”的got这个动作来表达现在的状态.等于Do you have a dictionary.
Did you get a dictionary?才是单纯指“过去”你得到了一本词典吗,不涉及现在.
你可能弄混了现在完成时与一般过去时.