کلاس ها و توابع جنریک در کاتلین
دوشنبه, ۲۰ آذر ۱۴۰۲، ۰۴:۳۷ ب.ظ
کلاس جنریک:
class ArrayUtil<T>(private val array : Array<T>) {
    fun findElement(element : T, foundElement:(index: Int, element: T?)->Unit){
        for(i in array.indices){
            if(array[i] == element){
                foundElement(i, element)
                return
            }
        }
        foundElement(-1, null)
        return
    }
}
نحوه استفاده:
        val array = ArrayUtil<String>(arrayOf("1","2","3","4","5"))
        array.findElement("3"){ index, element ->
            Log.d(TAG, "index: $index")
            Log.d(TAG, "element: $element")
        }
تابع جنریک:
fun<T> findElement(array: Array<T>, element : T, foundElement:(index: Int, element: T?)->Unit){
    for(i in array.indices){
        if(array[i] == element){
            foundElement(i, element)
            return
        }
    }
    foundElement(-1, null)
    return
}
نحوه استفاده:
        findElement<String>(arrayOf("1","2","3","4","5"), "5"){ index, element ->
            Log.d(TAG, "index: $index")
            Log.d(TAG, "element: $element")
        }
۰۲/۰۹/۲۰
