Im trying to build a blockchain - based application and I have a problem with understanding some crucial issues. What exactly is a block? I mean, Ive seen application where blocks were just String structures and a blockchain was an ArrayList of this String structures. But my question is, does it work like that in real blockchains? Are blockchains just ArrayLists or maybe they are stored in some files that are distributed among p2p network.