To elaborate some more, imagine you had a file that was a bunch of numbers like this:
1 33 2 45 2 9 1 99
An extremely simple and insecure hash algorithm might be to add all the numbers up. So, just for example, the hash for this file would be 192.
If I tampered with your file and changed the 33 to a 34, then the hash of the file would now be 193, and anyone who knew that the original hash for the file was supposed to be 192 would be able to tell that I had changed something inside it.
To defeat this extremely simple and insecure hash algorithm, I could instead try swapping two numbers. Or adding to one number and subtracting from another.
Just as a simple contrived example (ignoring encryption and certificates), suppose the series of numbers indicated a bank account and a transfer amount. I could try to arrange it so that I could encode my bank account and a different amount into that message, and have it come out to the same hash value (192). Then, anyone expecting a messge from you with the hash value 192 would still be happy, even though they were executing my instructions instead of yours.