Yes, this can easily be done with any number of language selector/translator apps - check them out here!
Are there any other features you’re looking for? This may help narrow-down the list for you. Many of the apps have geo-location enabled and they will automatically translate without customers having to choose a language.
Without the use of an app, you are also able to change the default language from Settings > Language in your admin.
You may also want to consider setting up Markets. This will allow you to customize your customer experience for people in specific regions. With Markets, you’ll want to be sure you are already shipping to all counties and regions otherwise it will be inactive by default.
You might also want to configure additional market settings, such as domains, languages, currency, and pricing, before you activate the market and begin selling to those countries and regions.