Lo primero que haría es asegurarme de que lo que dices que quieres es lo que quieres. La razón por la que hizo la pregunta en lugar de simplemente crear una enumeración es porque reconoció que estos dos datos están separados.
Considere lo que podría hacer si ampliara esas listas. Claro, ahora son booleanos. Pero, ¿qué pasaría si la lista de sexo fuera Masculino / Femenino / Otro, o si también permitiera que alguien no divulgara eso? Es posible que tenga 4 opciones allí. ¿Qué sucede si decide que su estado civil incluya Divorciado y Viudo? Puede tener 16 colores distintos para presentar. Ew.
Dependiendo de cuáles sean los requisitos de su aplicación, es posible que también deba trabajar para usuarios de baja visibilidad, lo que normalmente significa que todo el texto normal será de un color y el texto deshabilitado de otro. Si está utilizando el color como su único medio para comunicar ciertos datos, es posible que desee reconsiderarlo.
Si realmente decides que quieres ir por este camino, no deberías preocuparte demasiado por la repetición del código. Debería tener un método que encuentre el color para el emparejamiento dado. Un if..else con un if..else dentro no es tan malo. El mapeo del usuario de Quora es mejor. Tampoco va a tomar un tiempo apreciable para ejecutar, por lo que no hay realmente un problema de eficiencia.
- ¿Qué se puede hacer para mejorar la dinámica de esta sala?
- ¿Cuál es el mejor sitio web de educación continua para arquitectura / diseño?
- ¿Hay espacio para mejorar el diseño actual de la bicicleta o está completa?
- ¿El nuevo MacBook Pro es bueno para el diseño industrial o necesito elegir un portátil con Windows?
- ¿Por qué debería haber diferentes enfoques al diseñar un sitio web y una aplicación?