That new excuse for aggression, the "knockout game", does seem to show a need for more people being armed at all times, but I wonder how much a gun would really help.
If the attack comes with "no warning", as is claimed, how will you have time to pull your gun?
By all means carry a gun with you everywhere you go, but that's not enough. You also need to be aware of your surroundings every moment of every day. Make it a habit.
If the predators can't get within striking range, they can't punch you. But if they do manage to catch you off guard, and if they fail to knock you unconscious with the first punch, maybe you can end their consciousness forever before they succeed.