Kotlin/ByteArray
الدوال البانية
ينشِئ التابع ByteArray()
مصفوفةً من النوع ByteArray
بحجم size
مُحدَّدٍ، بحيث كل العناصر تساوي 0
، وفي حال تمرير دالة كوسيط فسيُحسَب كلُّ عنصرٍ فيها عبر استدعاء الدالة init
المُحدَّدة، والتي تُعيد عنصرًا في المصفوفة بحسب الفهرس (index) المُعطى.
الخاصيات
size
تعبِّر الخاصيّة size
عن عدد العناصر الموجودة في المصفوفة (ByteArray
).
الدوال
get
يعيد التابع get()
قيمة العنصر في المصفوفة عند الفهرس (index) المُحدَّد، ويمكن أيضًا استدعاء هذا التابع باستخدام معامل الفهرسة (index operator) المتمثل بالقوسين []
بالشكل:
iterator
يعيد التابع iterator()
عنصرًا تكراريًّا (iterator) بهدف تكرار بنيةٍ (block) برمجيةٍ على كافّة عناصر المصفوفة.
set
يعين التابع set()
قيمة العنصر في المصفوفة عند الفهرس (index) المُحدَّد، ويمكن أيضًا استدعاء هذا التابع باستخدام معامل الفهرسة (index operator) المتمثل بالقوسين []
بالشكل:
الدوال الموروثة
equals
تبين الدالة equals()
إذا ما كان الكائن المُمرّر إليها يساوي الكائن الذي استدعيت عبره.
hashCode
يعيد التابع hashCode()
قيمة الشيفرة hash code الخاصّة بالكائن الذي استُدعي عبره.
toString
يعيد التابع toString()
تمثيلًا نصيًا للكائن الذي يُستدعى عبره.
الخاصيات الإضافية (Extension Properties)
indices
تُستخدَم هذه الخاصيّة للحصول على الفهارس الصحيحة (valid indices) للمصفوفة أو المجموعة (collection).
lastIndex
تُستخدَم هذه الخاصيّة للحصول على الفهرس (index) الأخير للمصفوفة أو القائمة (list)، أو القيمة -1
إن كانت المصفوفة أو القائمة فارغةً.
الدوال الإضافية (Extension Functions)
all
تُعيد الدالة all()
القيمة true
إن كانت كافّة عناصر المصفوفة أو المجموعة (collection) التي استُدعيت عبرها تحقق العبارة المنطقية (predicate) المُحدَّدة، أو تعيد القيمة false
بخلاف ذلك.
any
يختلف سلوك الدالة any()
بحسب طريقة استدعائها، وسنناقش هذه الحالات تباعًا.
asIterable
تُنشِئ الدالة asIterable()
نسخةً تكراريّةً (iterable instance) تُغلّف (wrap) المصفوفة الأصلية وتعيد عناصرَها عندما تُستخدَم في حلقات التكرار (مثل for
).
a
تُعيد الدالة asList()
قائمةً (list) تُغلّف المصفوفة الأصلية التي استُدعيت عبرها.sList
asSequence
تُنشِئ الدالة asSequence()
نسخةً (instance) من النوع sequence
والتي تُغلّف المصفوفة الأصلية وتعيد عناصرها عندما تُستخدَم في حلقات التكرار (مثل حلقة for
).
associate
تعيد الدالة associate()
خريطةً (map) تحوي أزواجًا من "مفتاح/قيمة" ناتجة عن تمرير عناصر المصفوفة أو المجموعة (Collection) إلى الدالة()transform
.
associateBy
تعيد الدالة associateBy()
خريطةً (map) تحتوي على عناصر المصفوفة أو المجموعة (Collection) المعطاة مفهرسةً بقيمة المفتاح المعاد من تمرير تلك العناصر إلى الدالة valueTransform
.
associateByTo
تعيد الدالة associateByTo()
خريطةً متغيرةً (mutable map) تحتوي على أزواج من "قيمة/مفتاح"، إذ القيمة هي عناصر المصفوفة أو المجموعة (Collection) المعطاة، والمفتاح هو الناتج المعاد من تمرير تلك العناصر إلى الدالة keySelector
.
associateTo
تعيد الدالة associateTo()
خريطةً متغيرةً (mutable map) تحتوي على أزواج من "قيمة/مفتاح"، إذ القيمة هي عناصر المصفوفة أو المجموعة (Collection) المعطاة، والمفتاح هو الناتج المعاد من تمرير تلك العناصر إلى الدالة transform
.
average
تحسب الدالة average()
متوسط (average) عناصر المصفوفة أو المجموعة (Collection) المعطاة لها.
binarySearch
تبحث الدالة binarySearch()
عن عنصر معين في المجموعة أو مجال من المجموعة (Collection) باستخدام خوارزميَّة البحث الثنائي (binary search algorithm) وتعيد فهرس موقعه. ويجب أن تكون المجموعة مرتبَّةً وفق المُقارِن comparator
وإلا فستكون النتيجة المعادة غير مُحدّدة.
component1
تعيد الدالة component1()
العنصر الأول من المصفوفة أو المفتاح (key) لأول زوج (مفتاح/قيمة) في الخريطة (map) التي استدعيت معها. تسمح هذه الدالة باستخدام التصريحات التفكيكية (destructuring declarations) عند العمل على الخرائط.
contains
تتحقق الدالة contains()
إن كانت المصفوفة أو المجموعة التي استُدعيت معها تحتوي على العنصر الممرّر إليها، أو إن كانت الخريطة التي استدعيت معها تحتوي على ذلك العنصر كمفتاح (key).
contentEquals
تتحقَّق الدالة contentEquals()
من تساوي مصفوفتين بنيويًا (structurally equal)، أي إن كان لهما نفس العناصر وبنفس العدد والترتيب.
contentHashCode
تشفِّر الدالة contentHashCode()
محتوى المصفوفة التي استُدعيت معها كما لو كانت قائمة إلى شيفرة Hash.
contentToString
تعيد الدالة contentToString()
سلسلة نصية تمثِّل محتوى المصفوفة التي استُدعيت معها كما لو كانت قائمة.
copyOf
تنسخ الدالة copyOf()
كامل المصفوفة التي استُدعيت معها أو جزءًا منها.
copyOfRange
تنسخ الدالة copyOfRange()
مجالًا محدَّدًا من المصفوفة التي استُدعيت معها.
count
تعيد الدالة count()
عدد عناصر المصفوفة أو المجموعة أو الخريطة التي استُدعيت معها. يمكن تمرير دالة منطقية كمعامل إلى هذه الدالة لعد العناصر التي تحقق شرطًا معينًّا.
distinct
تحذف الدالة distinct()
العناصر المتكررة الموجودة في المصفوفة أو المجموعة التي استُدعيت معها وتعيد الناتج في قائمة. تُرتَّب العناصر في القائمة الناتجة بنفس ترتيبها في المصفوفة أو المجموعة الأصليَّة.
distinctBy
تعيد الدالة distinctBy()
قائمة تحتوي على العناصر الموجودة في المصفوفة أو المجموعة التي استُدعيت معها والتي تعطي نتيجة مختلفة عند تطبيق الدالة selector
عليها فقط. تُرتَّب العناصر في القائمة الناتجة بنفس ترتيبها في المصفوفة أو المجموعة الأصليَّة.
drop
تعيد الدالة drop()
قائمة تحوي جميع عناصر المصفوفة أو المجموعة التي استُدعيت معها باستثناء أول n
عنصر.
dropLast
تعيد الدالة dropLast()
قائمة تحوي جميع عناصر المصفوفة أو المجموعة التي استُدعيت معها باستثناء آخر n
عنصر.
dropLastWhile
تعيد الدالة dropLastWhile()
قائمةً تحوي جميع عناصر المصفوفة أو المجموعة التي استُدعيت معها باستثناء العناصر الأخيرة التي تحقق شرطًا معيَّنًا.
dropWhile
تعيد الدالة dropLastWhile()
قائمةً تحوي جميع عناصر المصفوفة أو المجموعة التي استُدعيت معها باستثناء العناصر الأولى التي تحقق شرطًا معيَّنًا.
elementAt
تجلب الدالة elementAt()
عنصرًا ذي فهرس معيَّن من المصفوفة أو المجموعة التي استُدعيت معها. إن كان فهرس العنصر المعطى خارج حدود المصفوفةأو المجموعة، فستُطلق الدالة الاستثناء IndexOutOfBoundsException.
elementAtOrElse
تجلب الدالة elementAtOrElse()
عنصرًا ذي فهرس معيَّن من المصفوفة أو المجموعة التي استُدعيت معها. إن كان الفهرس المعطى خارج حدودالمصفوفة أو المجموعة، فستُعيد الدالة ناتج استدعاء دالة معينة.
elementAtOrNull
تجلب الدالة elementAtOrNull()
عنصرًا ذي فهرس معيَّن من المصفوفة أو المجموعة التي استُدعيت معها. إن كان الفهرس المعطى خارج حدودالمصفوفة أو المجموعة، فستُعيد الدالة القيمة العدمية null
.
fill
تبدِّل الدالة fill()
قيمة جديدة معطاة مكان عناصر محدَّدة في المصفوفة أو القائمة التي تستدعى معها.
filter
ترشِّح الدالة filter()
عناصر المصفوفة أو المجموعة أو أزواج الخرائط المعطاة التي تحقِّق شرطًا معيَّنًا ثمّ تعيدها.
filterIndexed
ترشِّح الدالة filterIndexed()
عناصر المصفوفة أو المجموعة المعطاة التي أعيدت القيمة true
معها عند تطبيق الدالة predicate()
المُمرّر عليها، إذ يمرَّر فهرس كل عنصر وقيمته إلى الدالة predicate()
ثم تعيد بدورها قيمة منطقيَّة.
filterIndexedTo
تضيف الدالة filterIndexedTo()
إلى المجموعة المتغيرة destination
المُمرَّر إليها عناصر المصفوفة أو المجموعة المعطاة التي أعيدت القيمة true
مع كل عنصر منها عند تطبيق الدالة predicate()
المُمرّر عليها. يمرَّر فهرس كل عنصر وقيمته إلى الدالة predicate()
ثم تعيد بدورها قيمة منطقيَّة.
filterNot
filterNotTo
تضيف الدالةfilterNotTo()
إلى المعامل destination
الممرّر إليها عناصرّ المصفوفة أو المجموعة التي استُدعيت عبرها والتي لا تحقق الشرط المنطقي predicate
المُمرّر إليها. من الجدير بالذكر أنّ destination
ينبغي أن تكون مجموعة قابلة للتغيير (MutableCollection
).
filterTo
تضيف الدالةfilterTo()
إلى المعامل destination
الممرّر إليها عناصرّ المصفوفة أو المجموعة التي استُدعيت عبرها والتي تحقق الشرط المنطقيpredicate
المُمرّر إليها. من الجدير بالذكر أنّ destination
ينبغي أن تكون مجموعة قابلة للتغيير (MutableCollection
).
find
تعيد الدالةfind()
العنصر الأول من المصفوفة أو المجموعة التي استُدعيت عبرها والذي يحقق الشرط المنطقي predicate
المُمرّر إليها. وإن لم يكن هناك أي عنصر يحقق ذلك فستعيد null.
findLast
تعيد الدالةfindLast()
العنصر الأخير من المصفوفة أو المجموعة التي استُدعيت عبرها والذي يحقق الشرط المنطقي predicate
المُمرّر إليها. وإن لم يكن هناك أي عنصر يحقق ذلك فستعيد null.
first
تعيد الدالةfirst()
العنصر الأول من المصفوفة أو المجموعة التي استُدعيت عبرها، وفي حال تمرير دالة منطقية كمعامل فستعيد أول عنصر يحقق تلك الدالة.
firstOrNull
تعيد الدالةfirstOrNull()
العنصر الأول من المصفوفة أو المجموعة التي استُدعيت عبرها، وفي حال تمرير دالة منطقية كمعامل فستعيد أول عنصر يحقق تلك الدالة.
flatMap
تعيد الدالةflatMap()
لائحة تضم ناتج تطبيق الدالة transform()
المُمرّرة إليها على عناصر المصفوفة أو المجموعة التي استُدعيت عبرها، وفي حال استدعاء الدالة flatMap()
على قاموس فستعيد لائحة تضم ناتج تطبيق الدالة transform()
على مداخل (entries) القاموس.
flatMapTo
تضيف الدالةflatMapTo()
إلى اللائحة المُتغيرة (MutableCollection
) destination
المُمرّرة إليها ناتج تطبيق الدالة transform()
على عناصر المصفوفة أو المجموعة التي استُدعيت عبرها، وفي حال استدعاء الدالة flatMapTo()
على قاموس فستضيف إلى اللائحة destination
ناتج تطبيق الدالة transform()
على مداخل (entries) القاموس.
fold
يختلف سلوك الدالةfold()
حسب نوع الكائنات التي استُدعيت عبرها و نوع المعاملات (parameters) المُمرّرة إليها (انظر فقرة البنية العامة).
foldIndexed
تُراكِم الدالةfoldIndexed()
القيم بدءًا من القيمة المُمرّرة initial
وتطبّق العملية operation
من اليسار إلى اليمين على القيمة المُتراكمة الراهنة وعلى العنصر التالي من المصفوفة أو المجموعة التي استُدعيت عبرها وكذلك فهرسه. وتُعيد القيمة النهائية.
foldRight
تُراكِم الدالةfoldRight()
القيم بدءًا من القيمة المُمرّرة initial
وتطبّق العملية operation
من اليمين إلى اليسار على القيمة المُتراكمة الراهنة وعلى العنصر التالي من المصفوفة أو المجموعة التي استُدعيت عبرها. وتُعيد القيمة النهائية.
foldRightIndexed
تُراكِم الدالةfoldRightIndexed()
القيم بدءًا من القيمة المُمرّرة initial
وتطبّق العملية operation
من اليمين إلى اليسار على القيمة المُتراكمة الراهنة وعلى العنصر التالي من المصفوفة أو المجموعة التي استُدعيت عبرها وكذلك فهرسه. وتُعيد القيمة النهائية.
forEach
تُنفّد الدالةُforEach()
الدالةَ المُمرّرةَ action
على كل عناصر المصفوفة أو المجموعة أو القاموس الذي استُدعيت عبره.
forEachIndexed
تُنفّد الدالةُforEachIndexed()
الدالةَ المُمرّرةَ action
على كل عناصر المصفوفة أو المجموعة أو القاموس الذي استُدعيت عبره وعلى فهارسها (indices).
getOrElse
تعيد الدالة getOrElse()
قيمة العنصر عند الفهرس index
المُحدَّد في المصفوفة أو المجموعة التي استُدعيت عبرها. ، أو نتيجة استدعاء الدالة المُمرّرة defaultValue
إن كان الفهرس خارج الحدود.
getOrNull
تعيد الدالة getOrNull()
قيمة العنصر عند الفهرس index
المُحدَّد في المصفوفة أو المجموعة التي استُدعيت عبرها. ، أو null
إن كان الفهرس خارج الحدود.
groupBy
تعيد الدالةgroupBy()
قاموسًا يُجمّع عناصر المصفوفة أو المجموعة التي استُدعيت عبرها حيث مفاتيحه تعيدها الدالة المُمرّرة keySelector
وقيمه لوائحُ تضم عناصر المصفوفة أو المجموعة (أو ناتج تمرير عناصر المصفوفة أو المجموعة على الدالة valueTransform
في حال تمريرها).
groupByTo
تجمّع الدالةgroupByTo()
عناصر المصفوفة أو المجموعة التي استُدعيت عبرها وتضيفها إلى القاموس.المُمرّر destination
حيث مفاتيحه تعيدها الدالة الممرّرة keySelector()
مُطبّقة على كل عناصر المصفوفة أو المجموعة، وقيمُه لوائح تضم العناصر المقابلة، وفي حال تمرير معامل ثالثvalueTransform
فإنّ القيم ستكون لوائح تضم ناتج تطبيق الدالة valueTransform
على العناصر المقابلة . ثم تعيد القاموسdestination.
indexOf
تعيد الدالة indexOf()
فهرس أول ظهور للعنصر المُمرّر إليها في المصفوفة أو المجموعة أو اللائحة التي استُدعيت عبرها ، أو -1
إن كان العنصر المُمرّر غير موجود.
indexOfFirst
تعيد الدالة indexOfFirst()
فهرس أول ظهور للعنصر المُمرّر إليها في المصفوفة أو المجموعة أو اللائحة التي استُدعيت عبرها والذي يحقق الشرط المنطقي المُمرّر predicate
، أو -1
إن لم يكن هناك أي عنصر يحقق ذلك.
indexOfLast
تعيد الدالة indexOfLast()
فهرس آخر ظهور للعنصر المُمرّر إليها في المصفوفة أو المجموعة أو اللائحة التي استُدعيت عبرها والذي يحقق الشرط المنطقي المُمرّر predicate
، أو -1
إن لم يكن هناك أي عنصر يحقق ذلك.
intersect
تعيد الدالة intersect()
مجموعة تحتوي كل العناصر المشتركة بين المصفوفة أو المجموعة التي استُدعيت عبرها وتلك الممرّرة إلى الدالة.
isEmpty
تعيد الدالة isEmpty()
القيمة true
إن كانت المصفوفة التي استُدعيت عبرها فارغةً.
isNotEmpty
تعيد الدالة isNotEmpty()
القيمة true
إن كانت المصفوفة أو المجموعة التي استُدعيت عبرها غير فارغةً.
joinTo
تجمّع الدالةjoinTo()
سلسة نصية من عناصر المصفوفة أو المجموعة التي استُدعيت عبرها مفصولة بالمعامل المُمرّر separator
وباستخدام البادئةprefix
واللاحقة postfix
في حال تمريرهما،
joinToString
تنشئ الدالةjoinToString()
سلسة نصية من عناصر المصفوفة أو المجموعة التي استُدعيت عبرها مفصولة بالمعامل المُمرّر separator
وباستخدام البادئة prefix
واللاحقة postfix
في حال تمريرهما،
last
تعيد الدالةlast()
العنصر الأخير من المصفوفة أو المجموعة أو اللائحة التي استُدعيت عبرها. في حال تمرير شرط منطقي predicate
كوسيط فستعيد العنصر الأخير الذي يحقق ذلك الشرط.
lastIndexOf
تعيد الدالةlastIndexOf()
آخر فهرس للعنصر الممرّر إلى المصفوفة أو المجموعة أو اللائحة التي استُدعيت عبرها. وإن لم يكن العنصر موجودًا فستعيد -1
.
lastOrNull
تعيد الدالةlastOrNull()
العنصر الأخير من المصفوفة أو المجموعة أو اللائحة التي استُدعيت عبرها. في حال تمرير شرط منطقي predicate
كوسيط فستعيد العنصر الأخير الذي يحقق ذلك الشرط.
map
تعيد الدالةmap()
لائحة تضم ناتج تطبيق الدالة transform()
المُمرّرة إليها على عناصر المصفوفة أو المجموعة التي استُدعيت عبرها، وفي حال استدعاء الدالة map()
على قاموس فستعيد لائحة تضم ناتج تطبيق الدالة transform()
على مداخل (entries) القاموس.
mapIndexed
تعيد الدالةmapIndexed()
لائحة تضم ناتج تطبيق الدالة transform()
المُمرّرة إليها على عناصر المصفوفة أو المجموعة التي استُدعيت عبرها وعلى فهارسها.
mapIndexedTo
تطبق الدالةmapIndexedTo()
الدالة المُمررّة transform()
على عناصر المصفوفة أو المجموعة التي استُدعيت عبرها وعلى فهارسها وتضيف النتائج إلى المعامل الممرّر destination
.
mapTo
تطبق الدالةmapTo()
الدالة المُمررّة transform()
على عناصر المصفوفة أو المجموعة التي استُدعيت عبرها وتضيف النتائج إلى المعامل الممرّرdestination
. وفي حال استدعاء الدالة mapTo()
على قاموس فستضيف نتائج تطبيق الدالةtransform()
على مداخل (entries) القاموس إلى المعامل الممرّر destination
.
max
تعيد الدالةmax()
أكبر عنصر في المصفوفة أو المجموعة التي استُدعيت عبرها، أو null
إن كانت فارغة.
maxBy
تعيد الدالةmaxBy()
العنصر الأول في المصفوفة أو المجموعة التي استُدعيت عبره والذي له أكبر قيمة معادة من الدالة الممررة selector
، أو null
إن لم يكن هناك أي عنصر يحقق ذلك.
maxWith
تعيد الدالةmaxWith()
العنصر الأول في المصفوفة أو المجموعة التي استُدعيت عبره والذي له أكبر قيمة بحسب المقارِن comparator
الممرّر، أو null
إن لم يكن هناك أي عنصر يحقق ذلك.
min
تعيد الدالةmin()
أصغر عنصر في المصفوفة أو المجموعة التي استُدعيت عبرها، أو null
إن كانت فارغة.
minBy
تعيد الدالةminBy()
العنصر الأول في المصفوفة أو المجموعة التي استُدعيت عبره والذي له أصغر قيمة معادة من الدالة الممررة selector
، أو null
إن لم يكن هناك أي عنصر يحقق ذلك.
minWith
تعيد الدالةminWith()
العنصر الأول في المصفوفة أو المجموعة التي استُدعيت عبرها والذي له أصغر قيمة بحسب المقارِن comparator
الممرّر، أوnull
إن لم يكن هناك أي عنصر يحقق ذلك.
none
تعيد الدالةnone()
القيمة true
إن كانت المصفوفة أو المجموعة التي استُدعيت عبرها فارغة، أو تعيد false
. وفي حال تمرير شرط منطقيpredicate
. فستعيد true
إن لم يكن هناك أي عنصر يحقق ذلك الشرط المنطقي، أو تعيد false
.
partition
plus
reduce
reduceIndexed
reduceRight
reduceRightIndexed
reverse
reversed
reversedArray
single
singleOrNull
slice
sliceArray
sort
sortDescending
sorted
sortedArray
sortedArrayDescending
sortedBy
sortedByDescending
sortedDescending
sortedWith
subtract
sum
sumBy
sumByDouble
take
takeLast
takeLastWhile
takeWhile
toCollection
toHashSet
toList
toMutableList
toMutableSet
toSet
toSortedSet
- N/A
- N/A