My Chipper can swim, but not for very far, and he does not really like to swim. When I had him in the water, he would swim to me, and then when I turned him around, he would swim back to my husband. Even though it was only a few feet in between us, Chipper was totally exhausted after going back and forth a few times. I imagine that if he were able to swim more often, he would soon be able to swim longer as his muscles developed; but he is a Yorkie-poo, so all that long, flowing hair really weighs him down.
We used to have Peke-a-poo, and she had the heavy chest and short little legs, and she really could not swim much at all. Her back and hind legs would just sink, and she would be almost upright in the water with just her little flat face sticking out. So, obviously, she was not able to swim, but did fine when I put my hand under her tummy so she didn't sink.