If you’re select field only allows a single value then the code should be right. If the select field allows multiple selections then it will return an array of selected values.
If you originally created the field and allowed multiple selections… then edited a post and made a selection, then you changed the field to only allow a single value then it is probably still returning an array for this value.
Although this is not the only thing that could be wrong, but base on the code and information supplied that’s the best I can offer.
Welcome to the Advanced Custom Fields community forum.
Browse through ideas, snippets of code, questions and answers between fellow ACF users