Sí. Hay una solución mucho mejor.
Primero necesitas una resistencia en serie con tu LED. Conecte la resistencia desde el + 5V y luego al ánodo del LED.
El interruptor se conectaría desde el cátodo del LED a GND. Cuando se presiona el LED se encenderá.
La salida de Arduino debe operarse en un modo en el que cambie de Entrada a Salida @ 0 para su actividad de conmutación. Conecte la salida al cátodo del LED. Bajo ninguna circunstancia su software debe establecer el pin de salida en un nivel alto de '1'. Desea evitar la situación en la que un nivel de salida alto puede acortarse a GND presionando el interruptor. Para encender el LED en el pin se establece bajo '0' como una salida. Para apagar el LED, el pin se establece en modo de entrada.