``` private fun addItems() { var lat = this....
# announcements
d
Copy code
private fun addItems() {
    var lat = this.lat
    var lng = this.lng

    for (i in 0..9) {
      val offset = i / 60.0
      lat += offset
      lng += offset
      // 1 - anonymous object
      // clusterManager.addItem(object : ClusterItem {
      //   override fun getPosition(): LatLng = LatLng(lat, lng)
      // })

      // 2 - lambda
      // clusterManager.addItem(ClusterItem { LatLng(lat, lng) })

      // 3 - subclass
      clusterManager.addItem(MyCluster(lat, lng))
    }
  }
How can I have different anonymous objects in the loop? Now I’m subclassing
ClusterItem
interface. Maybe I can avoid that? Commented code creates just a singleton object and reuses it. As a result I have a list with ten equal instances.