প্রকৃতপক্ষে, এটি মনে হয় যে সুইফ্ট স্ট্রিংগুলিকে কম বস্তুগুলির মতো এবং আরও বেশি মানের হিসাবে বিবেচনা করার জন্য প্রচার করার চেষ্টা করছে। তবে এর অর্থ হুড সুইফ্টের নীচে এই স্ট্রিংগুলিকে বস্তু হিসাবে বিবেচনা করে না, যেমনটি নিশ্চিত যে আপনি সকলেই লক্ষ্য করেছেন যে আপনি এখনও স্ট্রিংগুলিতে পদ্ধতিগুলি আহ্বান করতে পারেন এবং তাদের বৈশিষ্ট্যগুলি ব্যবহার করতে পারেন।
উদাহরণ স্বরূপ:-
//example of calling method (String to Int conversion)
let intValue = ("12".toInt())
println("This is a intValue now \(intValue)")
//example of using properties (fetching uppercase value of string)
let caUpperValue = "ca".uppercaseString
println("This is the uppercase of ca \(caUpperValue)")
অবজেক্টসি তে আপনি স্ট্রিং অবজেক্টের রেফারেন্সটি একটি ভেরিয়েবলের মাধ্যমে পাস করতে পারতেন, তার উপরে কল করার পদ্ধতিগুলির উপরে, যা স্ট্রিংগুলি খাঁটি অবজেক্টস এই সত্যটি প্রতিষ্ঠিত করে।
স্ট্রিংকে অবজেক্ট হিসাবে দেখার চেষ্টা করার সময় এই ধরাটি ধরা পড়ে, তীব্রভাবে আপনি কোনও ভেরিয়েবলের মাধ্যমে রেফারেন্স দিয়ে স্ট্রিং অবজেক্টটি পাস করতে পারবেন না। সুইফট সর্বদা স্ট্রিংয়ের একটি নতুন কপিটি পাস করবে। অতএব, স্ট্রিংগুলি সুইফটিতে মান ধরণের হিসাবে বেশি পরিচিত। আসলে, দুটি স্ট্রিং লিটারেল অভিন্ন হবে না (===)। এগুলি দুটি পৃথক অনুলিপি হিসাবে বিবেচিত হয়।
let curious = ("ca" === "ca")
println("This will be false.. and the answer is..\(curious)")
আপনি দেখতে পাচ্ছেন যে আমরা স্ট্রিংকে অবজেক্ট হিসাবে ভাবার এবং প্রচলিত মানগুলির মতো আচরণ করার প্রচলিত পদ্ধতি থেকে পথ ভাঙতে শুরু করি। সুতরাং .isEqualToString যা স্ট্রিং অবজেক্টগুলির জন্য পরিচয় অপারেটর হিসাবে বিবেচিত হয়েছিল তা আর বৈধ নয় কারণ আপনি কখনও সুইফটে দুটি অভিন্ন স্ট্রিং অবজেক্ট পেতে পারবেন না। আপনি কেবল এর মান তুলনা করতে পারেন, বা অন্য কথায় সমতা (==) যাচাই করতে পারেন।
let NotSoCuriousAnyMore = ("ca" == "ca")
println("This will be true.. and the answer is..\(NotSoCuriousAnyMore)")
আপনি যখন দ্রুতগতিতে স্ট্রিং অবজেক্টগুলির পরিব্যক্তিটি দেখুন তখন এটি আরও আকর্ষণীয় হয়। তবে আরেকটি প্রশ্নের জন্য, আর একদিন। আপনার সম্ভবত এমন কিছু বিষয় লক্ষ্য করা উচিত যা এর সত্যই আকর্ষণীয় করে তোলে। :) আশা করি যা কিছু বিভ্রান্তি দূর করে দেয়। চিয়ার্স!
===
পরিচয় অপারেটর যেখানে==
সমতা অপারেটর (isEqual:
এনএসওজেক্ট এবং এর সাবক্লাসে ডিফল্ট কল দ্বারা )