অ্যারে স্কালায় আরম্ভ করা হচ্ছে


115

আমি স্কেলে নতুন, আজই এটি শিখতে শুরু করেছি I আমি স্ক্যালায় কোন অ্যারে কীভাবে আরম্ভ করব তা জানতে চাই।

জাভা কোড উদাহরণ

String[] arr = { "Hello", "World" };

স্কালায় উপরের কোডটির সমতুল্য কত?

উত্তর:


141
scala> val arr = Array("Hello","World")
arr: Array[java.lang.String] = Array(Hello, World)

6
এই উত্তরটি এখনও স্ক্যালায় বহুমাত্রিক অ্যারেগুলি কীভাবে কীভাবে শুরু করতে হবে তা ব্যাখ্যা করে না (যা এখানে সম্বোধন করা হয়: স্ট্যাকওভারফ্লো.com / প্রশ্নস / ১৩8625২256868/২ )
অ্যান্ডারসন গ্রিন

108

শূন্যে ভরা একটি অ্যারে শুরু করতে, আপনি ব্যবহার করতে পারেন:

> Array.fill[Byte](5)(0)
Array(0, 0, 0, 0, 0)

এটি জাভার সমতুল্য new byte[5]


3
শুধু এফওয়াইআই, সমতুল্য আরম্ভকারী হিসাবে তালিকাভুক্ত List.fill(5)(0)এমনকি কার্যকারিতা গ্রহণ করে। List.fill(5)(myFunc())
cevaris


17

ভাসিলের উত্তরের অতিরিক্ত: আপনার যদি স্কাল সংগ্রহ হিসাবে দেওয়া মান থাকে তবে আপনি লিখতে পারেন

val list = List(1,2,3,4,5)
val arr = Array[Int](list:_*)
println(arr.mkString)

তবে সাধারণত টু অ্যারে পদ্ধতিটি আরও কার্যকর হয়:

val list = List(1,2,3,4,5)
val arr = list.toArray
println(arr.mkString)

15

আপনি যদি অ্যারের দৈর্ঘ্য জানেন তবে আপনি এর সামগ্রীটি জানেন না, আপনি ব্যবহার করতে পারেন

val length = 5
val temp = Array.ofDim[String](length)

আপনি যদি দুটি মাত্রা অ্যারে রাখতে চান তবে আপনি এর সামগ্রীটি জানেন না, আপনি ব্যবহার করতে পারেন

val row = 5
val column = 3
val temp = Array.ofDim[String](row, column)

অবশ্যই, আপনি স্ট্রিংকে অন্য প্রকারে পরিবর্তন করতে পারেন।

আপনি যদি ইতিমধ্যে এর বিষয়বস্তু জানেন তবে আপনি এটি ব্যবহার করতে পারেন

val temp = Array("a", "b")

10

বহুমাত্রিক অ্যারে ঘোষণার আরেকটি উপায়:

Array.fill(4,3)("")

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