Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

193
Views
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 answers
Answer question

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 Report

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 Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!