Dmitriy A., qui portait un gilet pare-balles et un treillis militaire, a été neutralisé par un pompier en civil jusqu'à l'arrivée des forces de l'ordre.
Aucun coup de feu n'a été tiré et personne n'a été blessé, a fait savoir la police de Springfield, ville du Missouri, dans le Midwest américain.
"L'enquête se poursuit à l'heure actuelle afin de déterminer ses motifs", a-t-elle ajouté dans un communiqué, précisant que Dmitriy A. avait été inculpé de "menace terroriste".
Walmart continuera à vendre des armes
Malgré ces deux fusillades, le géant américain de la grande distribution ne prévoit pas de cesser de vendre complètement armes à feu et munitions, dont il a déjà restreint l'offre au fil des ans.
L'entreprise, qui assure vouloir se consacrer uniquement aux "sportifs et chasseurs", ne vend plus de fusils d'assaut semi-automatiques depuis 2015.
Quelques jours après El Paso et Southaven
Cet incident est intervenu moins d'une semaine après qu'un autre jeune homme blanc de 21 ans eut abattu 22 personnes dans un supermarché Walmart d'El Paso, au Texas.
Le tireur a admis en garde à vue avoir voulu attaquer des "Mexicains", selon un compte-rendu d'enquête.
Quatre jours plus tôt, à Southaven, dans le Mississippi, un salarié du groupe Walmart avait tué deux de ses collèges sur leur lieu de travail.
afp/jfe