Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

185
Vistas
Android val no se puede reasignar

Definí una variable llamada notas, cuando trato de modificarla desde un método, Android Studio dice

val no se puede reasignar

sin embargo, puedo modificarlo si accedo a la variable de esta manera: this.notes .

 class NoteAdapter(var context : Context) : RecyclerView.Adapter<NoteViewHolder>(){ private var notes = emptyList<Note>() override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): NoteViewHolder { var itemView = LayoutInflater.from(context).inflate(R.layout.note_item, parent, false) return NoteViewHolder(itemView) } override fun getItemCount(): Int { return notes.size } fun setNotes(notes: List<Note>) { this.notes = notes notifyDataSetChanged() }

¿Por qué está pasando esto?

Vengo de un fondo de Javascript, así que disculpe mi ignorancia.

over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

Usted nombró dos notes cosas:

 private var notes = emptyList<Note>()

y:

 fun setNotes(notes: List<Note>)

Entonces, en la función setNotes() , las notes se refieren al parámetro de la función. Eso se trata como un val y no se puede reasignar. this.notes se refiere a la propiedad de notes definida en su clase NoteAdapter .

En general, trate de usar nombres diferentes para reducir la confusión. Por ejemplo, podrías usar:

 fun setNotes(replacementNotes: List<Note>)
over 4 years ago · Santiago Trujillo Denunciar

0

En Kotlin,

val : cuando declaró cualquier variable en Koltin como variable final, una vez asignada, no podemos cambiar el valor de la misma.

Entonces use var cuando necesite definir/cambiar el valor mientras ejecuta la aplicación

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda