Coki will have more to offer since Coral World is there. For sheer "beach enjoyment", I'd probably do Coki. Actually, even for snorkelling, I would do Coki. Lots of fish to the right where the rocks are, and beautiful coral to the left cliffs if you snorkel out a bit. Coki can tend to get crowded though, while Sapphire is less so. St. John also has other nice beaches you may want to try. In general, it's hard to go wrong with any of the beaches :-)
These beaches are smaller than Trunk and Magen's, just in case that is important