50
  1. What is the difference between MutableList and List in Kotlin?
  2. and what is the use of each type?
2
  • You may take a look at the answers here. Commented Sep 27, 2017 at 10:58
  • 1
    Possible duplicate of Kotlin and Immutable Collections? Commented Sep 27, 2017 at 11:46

2 Answers 2

79

From docs:

List: A generic ordered collection of elements. Methods in this interface support only read-only access to the list; read/write access is supported through the MutableList interface.

MutableList: A generic ordered collection of elements that supports adding and removing elements.

You can modify a MutableList: change, remove, add... its elements. In a List you can only read them.

Sign up to request clarification or add additional context in comments.

Comments

29

SUMMARY: List is read-only while MutableList allows you to add, edit and remove items

  • List

     var language: List<String> = listOf("java", "kotlin", "dart")
    

List type is an interface which provides read-only access. you are limited to read operations like

get, indexof, subList, contains, size etc

with kotlin you have access to some more functions **like sort, stream,binarySearch

  • MutableList

Consider this example:

    var mutableLanguage: MutableList<String> = mutableListOf("java", "kotlin", "dart")
    

with mutablelist you can perform read and write operation i.e., add or remove contents of a list. beside supporting all the functions of interface type List.

add, addAll, replace, replaceAll, set, removeAt etc

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.