কোটলিন অ্যারে কে জাভা ভার্সে রূপান্তর করুন


121

আমি কীভাবে আমার কোটলিনকে Arrayএকটি ভার্স জাভে রূপান্তর করতে পারি String[]?

val angularRoutings = 
    arrayOf<String>("/language", "/home")

// this doesn't work        
web.ignoring().antMatchers(angularRoutings)

কীভাবে একটি ভারাইজ পদ্ধতি প্যারামিটারে অ্যারেলিস্ট পাস করবেন?

উত্তর:


231

আপনার স্প্রেড অপারেটরটি ব্যবহার করা উচিত যা দেখতে এটির মতো: *
স্প্রেড অপারেটরের অ্যারে যুক্তির সামনে রাখা দরকার:

antMatchers(*angularRoutings)

আরও তথ্যের জন্য ডকুমেন্টেশন দেখুন :

যখন আমরা একটি- varargফাংশন কল করি, আমরা একের পর এক আর্গুমেন্টগুলি পাস করতে পারি, উদাহরণস্বরূপ asList(1, 2, 3), বা যদি ইতিমধ্যে আমাদের কাছে অ্যারে থাকে এবং এর বিষয়বস্তুটি ফাংশনে প্রেরণ করতে চান, আমরা স্প্রেড অপারেটর (এর সাথে অ্যারের উপসর্গ *) ব্যবহার করি:

দয়া করে নোট করুন যে স্প্রেড অপারেটরটি কেবল অ্যারেগুলির জন্য সংজ্ঞায়িত, এবং সরাসরি কোনও তালিকায় ব্যবহার করা যায় না। কোনও তালিকার সাথে কাজ করার সময়, toTypedArray()এটিকে অ্যারেতে রূপান্তর করতে উদাহরণ ব্যবহার করুন :

 *list.toTypedArray()

এবং কিভাবে ফিরে রূপান্তর?
ল্যাকাস

@ আইকাস "রূপান্তরিত ফিরে" বলতে কী বোঝ? একটি varargপৃথক উপাদানগুলির প্রত্যাশা করে এবং *array"এই উদ্দেশ্যেটিকে এই উদ্দেশ্যে আলাদা উপাদান হিসাবে বিবেচনা করুন" বলার কোটলিন উপায়। মধ্যে vararg-function varargপরামিতি একটি অ্যারের যাহাই হউক না কেন হতে হবে। স্বতন্ত্র উপাদানগুলিকে একটি অ্যারে রূপান্তর করতে আপনি ব্যবহার করতে পারেন arrayOf(...), তবে এই ক্ষেত্রে আপনার প্রয়োজন নেই।
ডারিও সিডল

3
নোট করুন যে এটির একটি খুব উচ্চ-পারফরম্যান্স পেনাল্টি রয়েছে। sites.google.com/a/athaydes.com/renato-athaydes/posts/... ভারার্গস, অথবা পরীক্ষা medium.com/@BladeCoder/...
svkaka

স্প্রেড অপারেটর ব্যবহার এড়াতে এবং গ্রহণযোগ্য কোনও পদ্ধতিতে কিছু অ্যারে বা তালিকা পাস করার কোনও উপায় আছে কি vararg?
ওয়াকালুন

@ ডারিওসিডল তার অর্থ: যদি আমাদের কাছে স্ট্রিংয়ের ভার্জ থাকে এবং আমরা কোনও ফাংশনটিতে যেতে চাই যা স্ট্রিংগুলির অ্যারের আশা করে?
অ্যান্ড্রয়েড বিকাশকারী
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.