meaning - কিভাবে Elixir মধ্যে স্ট্রিং যোগদান?




elixir meaning in bengali (6)

আপনার কাছে যদি কোনও ইচ্ছাকৃত তালিকা থাকে তবে আপনি Enum.join ব্যবহার করতে পারেন, তবে যদি এটি কেবল দুই বা তিনটির জন্য হয় তবে স্পষ্ট স্ট্রিং কনক্যাটেনেশনটি পড়তে সহজ হওয়া উচিত

"StringA" <> " " <> "StringB"

যাইহোক, আপনি যদি এটির মাধ্যমে নেটওয়ার্কের মাধ্যমে আউটপুট করতে যাচ্ছেন তবে প্রায়ই আপনাকে মেমরির একটি স্ট্রিং হিসাবে এটির প্রয়োজন হবে না। এই ক্ষেত্রে, একটি আইওলিস্ট (একটি নির্দিষ্ট তালিকাটির একটি নির্দিষ্ট টাইপ) ব্যবহার করার জন্য এটি উপকারী হতে পারে, যা আপনাকে অনুলিপি করা ডেটা থেকে সংরক্ষণ করে। উদাহরণ স্বরূপ,

iex(1)> IO.puts(["StringA", " ", "StringB"])
StringA StringB
:ok

যেহেতু আপনি কোথাও ভেরিয়েবলের মতো সেই স্ট্রিংগুলি একটি গভীর তালিকা ব্যবহার করে, আপনি এটি অন্য কোথাও আউটপুট করার জন্য একটি সম্পূর্ণ নতুন স্ট্রিং বরাদ্দ করা এড়াতে পারবেন। ইলিক্স / ইर्लং-এর অনেকগুলি ফাংশন আইওলিস্টকে বোঝে, তাই আপনাকে প্রায়ই অতিরিক্ত কাজ করতে হবে না।

আমি কিভাবে একটি স্থান সহ একটি তালিকা দুটি স্ট্রিং যোগদান করবেন, যেমন:

["StringA", "StringB"]

হয়ে

"StringA StringB"

আপনি 'string A' ++ ' ' ++ 'string B' করতে পারেন 'string A' ++ ' ' ++ 'string B'


আপনি শুধু কিছু ইচ্ছাকৃত তালিকা যোগ দিতে চান:

"StringA" <> " " <> "StringB"

বা শুধু স্ট্রিং interpolation ব্যবহার করুন:

 "#{a} #{b}"

আপনার তালিকা আকার ইচ্ছাকৃতভাবে হয়:

Enum.join(["StringA", "StringB"], " ")

... উপরের সব সমাধান ফিরে আসবে

"StringA StringB"

একটি Enum.reduce আপনার উদাহরণ কোন জন্য খুব কাজ করবে?

iex(4)> Enum.reduce(["StringA", "StringB"], fn(x, acc) -> x <> " " <> acc end) "StringB StringA"


এটা আপনি কি করার চেষ্টা করছেন উপর নির্ভর করে। আপনি যদি শুধুমাত্র একটি নতুন পরিবর্তনশীলকে লেখার চেষ্টা করছেন, তবে কেবল এটি ব্যবহার করুন:

  • স্ট্রিং interpolation

    a = "StringA"
    b = "StringB"
    "#{a} #{b}"
    
  • স্ট্রিং কনক্যাটেন্টেশন: "StringA" <> " " <> "StringB

  • Enum.join() : ["StringA", "StringB"] |> Enum.join(" ")

যাইহোক, যেমন উরি উল্লেখ করেছেন, আইওলিস্টগুলিও ব্যবহার করা যেতে পারে:

["StringA", " ", "StringB"] |> IO.iodata_to_binary

আপনি সম্পদ খরচ সম্পর্কে যত্ন প্রয়োজন হলে IOLists আসলে সবচেয়ে অভিনয়কারী হতে যাচ্ছে। বিগ নেরড র্যাঞ্চের কর্মক্ষমতা লাভ w / IOLists উপর একটি ভাল লেখা আপ আছে।


সম্পূর্ণতা জন্য উত্তর, আপনি স্ট্রিং interpolation ব্যবহার করতে পারেন:

iex(1)> [a, b] = ["StringA", "StringB"]
iex(2)> "#{a} #{b}"
"StringA StringB"




elixir