জাভা এর স্ট্রিং এর সমতুল্য কোটলিন []?


164

আমি দেখতে পাচ্ছি যে কোটলিন জাভাতে ByteArray, ShortArray, IntArray, CharArray, DoubleArray, FloatArrayসমান byte[], short[], int[],char[], double[], float[]

এখন আমি ভাবছি, StringArrayজাভা এর সমান কি আছে String[]?


7
typealias StringArray = Array<String>;)
marstran

উত্তর:


225

এটির জন্য কোনো বিশেষ ক্ষেত্রে String, কারণ String, জেভিএম উপর একটি সাধারণ উল্লেখ প্রকার বিপরীতে জাভা প্রিমিটিভের ( int, double, ...) - তাদের একটি উল্লেখের মধ্যে সংরক্ষণকারী Array<T>প্রয়োজন তাদের মত বস্তুর মধ্যে বক্সিং IntegerএবংDoubleIntArrayকোটলিনের মতো বিশেষায়িত অ্যারের উদ্দেশ্য হ'ল বাক্সবাক্সিত আদিমগুলি সঞ্চয় করা, বক্সিং করা এবং আনবক্সিং ওভারহেড থেকে মুক্তি ( int[]পরিবর্তে জাভা হিসাবে একই Integer[])।

আপনি জাভা সমান যা ব্যবহার করতে পারেন Array<String>(এবং Array<String?>nullaables জন্য) String[]:

val stringsOrNulls = arrayOfNulls<String>(10) // returns Array<String?>
val someStrings = Array<String>(5) { "it = $it" }
val otherStrings = arrayOf("a", "b", "c")

আরও দেখুন: ভাষা রেফারেন্সে অ্যারেগুলি


18

অ্যারেঅফ , অ্যারেঅফনালস , খালিআরে ব্যবহার করুন

var colors_1: Array<String> = arrayOf("green", "red", "blue")
var colors_2: Array<String?> = arrayOfNulls(3)
var colors_3: Array<String> = emptyArray()

16

Array of Stringsকোটলিনে একটি খালি তৈরি করতে আপনার নিম্নলিখিত ছয়টি পদ্ধতির একটি ব্যবহার করা উচিত:

প্রথম পদ্ধতির:

val empty = arrayOf<String>()

দ্বিতীয় পদ্ধতির:

val empty = arrayOf("","","")

তৃতীয় পদ্ধতি:

val empty = Array<String?>(3) { null }

চতুর্থ পন্থা:

val empty = arrayOfNulls<String>(3)

পঞ্চম পন্থা:

val empty = Array<String>(3) { "it = $it" }

ষষ্ঠ পন্থা:

val empty = Array<String>(0, { _ -> "" })

9

এই প্রকারগুলি সেখানে রয়েছে যাতে আপনি আদিমদের অ্যারে তৈরি করতে পারেন, এবং বাক্সযুক্ত ধরণের নয়। যেহেতু স্ট্রিং জাভাতে আদিম নয়, আপনি Array<String>কোটলিনে জাভার সমতুল্য হিসাবে ব্যবহার করতে পারেন String[]


5

জন্য Stringsএবং অন্যান্য ধরনের, আপনি শুধু ব্যবহার Array<*>। কারণ IntArrayএবং অন্যদের উপস্থিতি হ'ল অটোবক্সিং প্রতিরোধ করা।

যেখানে সম্পর্কিত হয় তাই int[]সম্পর্কিত ।IntArrayInteger[]Array<Int>


1

স্ট্রিং অ্যারে তৈরির কয়েকটি সাধারণ উপায়

  1. var arr = অ্যারে (5) "" "}

এটি খালি স্ট্রিং হতে প্রাথমিক মানগুলির সাথে 5 টি স্ট্রিং তৈরি করবে create

  1. var অ্যারে = অ্যারেঅফনালস <String?>(5)

এটি প্রাথমিক মানগুলি শূন্য হওয়ার সাথে সাথে 5 মাপের একটি অ্যারে তৈরি করবে। অ্যারে পরিবর্তন করতে আপনি স্ট্রিং ডেটা ব্যবহার করতে পারেন।

  1. var arr = অ্যারেঅফ ("শূন্য", "এক", "দুই", "তিন")

আপনি যদি অ্যারের সামগ্রীগুলি ইতিমধ্যে জানেন তবে আপনি সরাসরি অ্যারেটি শুরু করতে পারেন।

  1. স্ট্রিংগুলির একটি বহুমাত্রিক অ্যারে তৈরি করার জন্য একটি সহজ উপায় রয়েছে ।

    var ম্যাট্রিক্স = অ্যারে (5) ray অ্যারে (6) "" "}

    আপনি খালি স্ট্রিংয়ের প্রাথমিক মান সহ 5 টি সারি এবং 6 কলাম সহ একটি ম্যাট্রিক্স তৈরি করতে পারেন।


0

এই উদাহরণটি অ্যান্ড্রয়েডে পুরোপুরি কাজ করে

কোটলিনে আপনি এর জন্য ল্যাম্বডা এক্সপ্রেশন ব্যবহার করতে পারেন। কোটলিন অ্যারে কনস্ট্রাক্টর সংজ্ঞাটি হ'ল:

Array(size: Int, init: (Int) -> T)

যা মূল্যায়ন করে:

skillsSummaryDetailLinesArray = Array(linesLen) {
        i: Int -> skillsSummaryDetailLines!!.getString(i)
}

বা:

skillsSummaryDetailLinesArray = Array<String>(linesLen) {
        i: Int -> skillsSummaryDetailLines!!.getString(i)
}

এই উদাহরণে ক্ষেত্রের সংজ্ঞা ছিল:

private var skillsSummaryDetailLinesArray: Array<String>? = null

আশাকরি এটা সাহায্য করবে


0

আপনি খুব ব্যবহার করতে পারেন:

val frases = arrayOf("texto01","texto02 ","anotherText","and ")

উদাহরণ স্বরূপ.

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.