ইন App ইঞ্জিন ডক্স , ঊহ্য শব্দ (কি JID...
) এই পদ্ধতি স্বাক্ষরে জন্য?
public MessageBuilder withRecipientJids(JID... recipientJids)
এই তিনটি বিন্দুর কাজ কী?
ইন App ইঞ্জিন ডক্স , ঊহ্য শব্দ (কি JID...
) এই পদ্ধতি স্বাক্ষরে জন্য?
public MessageBuilder withRecipientJids(JID... recipientJids)
এই তিনটি বিন্দুর কাজ কী?
উত্তর:
সেগুলি জাভা ভারার্গস gs তারা আপনাকে নির্দিষ্ট ধরণের যেকোন সংখ্যক অবজেক্টকে পাস করতে দেয় (এই ক্ষেত্রে তারা জেআইডি টাইপের হয়)।
আপনার উদাহরণে, নিম্নলিখিত ফাংশন কলগুলি বৈধ হবে:
MessageBuilder msgBuilder; //There should probably be a call to a constructor here ;)
MessageBuilder msgBuilder2;
msgBuilder.withRecipientJids(jid1, jid2);
msgBuilder2.withRecipientJids(jid1, jid2, jid78_a, someOtherJid);
এখানে আরও দেখুন: http://java.sun.com/j2se/1.5.0/docs/guide/language/varargs.html
পদ্ধতির অভ্যন্তরে উপবৃত্তাকার বা ভারার্গ্স ব্যবহার করার উপায়টি যেন এটি একটি অ্যারে হয়:
public void PrintWithEllipsis(String...setOfStrings) {
for (String s : setOfStrings)
System.out.println(s);
}
এই পদ্ধতিটি নিম্নলিখিত হিসাবে বলা যেতে পারে:
obj.PrintWithEllipsis(); // prints nothing
obj.PrintWithEllipsis("first"); // prints "first"
obj.PrintWithEllipsis("first", "second"); // prints "first\nsecond"
ভিতরে PrintWithEllipsis
, প্রকারটি setOfStrings
স্ট্রিংয়ের একটি অ্যারে। সুতরাং আপনি কিছু কাজ সংকলক সংরক্ষণ এবং একটি অ্যারে পাস করতে পারে:
String[] argsVar = {"first", "second"};
obj.PrintWithEllipsis(argsVar);
জন্য ভারার্গস পদ্ধতি, একটা ক্রম প্যারামিটার একই ধরণের একটি অ্যারের হচ্ছে বলে গণ্য করা হয়। সুতরাং যদি দুটি স্বাক্ষর পৃথক হয় কেবল তার মধ্যে একটি একটি ক্রম ঘোষণা করে এবং অন্যটি অ্যারে ঘোষণা করে, যেমন এই উদাহরণে:
void process(String[] s){}
void process(String...s){}
তারপরে একটি সংকলন-সময় ত্রুটি ঘটে।
উত্স: জাভা প্রোগ্রামিং ভাষার স্পেসিফিকেশন, যেখানে প্রযুক্তিগত শব্দটি variable arity parameter
সাধারণ শব্দটির চেয়ে বেশি varargs
।
তিনটি বিন্দু (...) স্বরলিপিটি আসলে গণিত থেকে ধার করা হয় এবং এর অর্থ "... এবং" ইত্যাদি।
জাভাতে এর ব্যবহারের জন্য এটির varargs
অর্থ দাঁড়ায় , এর অর্থ যে পদ্ধতি কলটিতে যে কোনও সংখ্যক যুক্তি যুক্ত করা যায়। একমাত্র সীমাবদ্ধতা হ'ল varargs
অবশ্যই পদ্ধতির স্বাক্ষরের শেষে থাকতে হবে এবং প্রতি পদ্ধতিতে কেবল একটি থাকতে পারে।
এগুলি হ'ল varargs
এগুলি এমন একটি পদ্ধতি তৈরিতে ব্যবহৃত হয় যা কোনও সংখ্যক আর্গুমেন্ট গ্রহণ করে।
উদাহরণস্বরূপ মুদ্রণযন্ত্র.প্রিন্টফ পদ্ধতিটি এটি ব্যবহার করে, যেহেতু আপনি জানেন না আপনি যুক্তি ব্যবহার করবেন।
এগুলি কেবল যুক্তিগুলির চূড়ান্ত অবস্থান হিসাবে ব্যবহার করা যেতে পারে।
varargs
জাভা 1.5 যোগ করা হয়েছে
এর অর্থ হল যে পদ্ধতিটি একটি পরিবর্তনশীল সংখ্যক আর্গুমেন্ট ("ভারাগস") টাইপ গ্রহণ করে JID
। পদ্ধতির মধ্যে, recipientJids
উপস্থাপন করা হয়।
এটি এমন ক্ষেত্রে কার্যকর যেখানে আপনার এমন একটি পদ্ধতি রয়েছে যা প্রাকৃতিক উপায়ে একাধিক যুক্তি হ'ল পরিচালনা করতে পারে এবং আপনাকে কলগুলি লেখার অনুমতি দেয় যা তৈরির কদর্যতা ছাড়াই একই পদ্ধতিতে এক, দুই বা তিনটি পরামিতি পাস করতে পারে write উড়ে একটি অ্যারে।
এটি sprintf
সি থেকে আসা আইডিয়ামগুলিকেও সক্ষম করে ; দেখতে String.format()
যেমন,।
…
, ইউনিকোড ইউ + 2026 চেষ্টা করেছিলাম । জাভা 8-তে নেটবিয়ানস 8 "অবৈধ চরিত্র" হিসাবে রিপোর্ট করেছে। সুতরাং জাভা ভারার্গসের জন্য ট্রিপল ফুল স্টপ (পিরিয়ড), প্রয়োজন...
।