কোডজিম ইউনিভার্সিটি কোর্সের অংশ হিসাবে একজন পরামর্শদাতার সাথে একটি বক্তৃতা স্নিপেট। সম্পূর্ণ কোর্সের জন্য সাইন আপ করুন।


"আপনি আবার, আমিগো. আচ্ছা, হ্যালো।"

"মনে হচ্ছে তুমি আমাকে দেখে খুব খুশি নও, দিয়েগো?"

"আমি ধারণা পেয়েছি যে আপনি মনে করেন যে আপনি ইতিমধ্যে জাভা পদ্ধতি সম্পর্কে জানার মতো সবকিছু শিখে ফেলেছেন।"

"ওহ, আমি না ..."

"আমি তা মনে করি না! আপনি এর অর্ধেকও জানেন না।"

"অবশ্যই, আমি দ্বিমত করছি না ...

"ঠিক আছে, যথেষ্ট কথা। এটি শুরু করার সময়। এবং আমরা সহজ কিছু দিয়ে শুরু করব। উদাহরণস্বরূপ, জাভাতে একটি রিটার্ন স্টেটমেন্ট রয়েছে। এটি আপনাকে অবিলম্বে একটি পদ্ধতি বন্ধ করার অনুমতি দেয় যেখানে এটি বলা হয়। এখানে বিবৃতিটি দেওয়া হল:

return;

"এটি সহজ: returnএকটি সেমিকোলন দ্বারা অনুসরণ করা একক শব্দ। প্রোগ্রামটি এই বিবৃতিটি কার্যকর করার সাথে সাথে, বর্তমান পদ্ধতিটি প্রস্থান করে এবং কলিং পদ্ধতিটি চলতে থাকে।

"যদি returnপদ্ধতিতে বলা হয় main, তবে mainপদ্ধতিটি অবিলম্বে শেষ হবে এবং এটির সাথে পুরো প্রোগ্রামটি।

উদাহরণ:

class Solution
{
   public static void fill(int[] data, int from, int to, int value)
   {
     if (from < 0 || to > data.length)
       return;

     for (int i = from; i < to; i++)
     {
       data[i] = value;
     }
   }

   public static void main(String[] args)
   {
     int[] months = {1, 2, 3, 4, 5, 6, 7, 8 ,9, 10, 11, 12};
     fill(months, 2, 10, 8);
   }
}
পদ্ধতিটি fill দিয়ে পাস করা অ্যারের অংশ পূরণ করে value

অ্যারের যে অংশটি পূরণ করতে হবে তা সূচক from এবং to.

যদি   অ্যারের দৈর্ঘ্যের চেয়ে from কম 0বা বেশি হয়, তাহলে পদ্ধতিটি অবিলম্বে বন্ধ হয়ে যায়।to

"উপরের প্রোগ্রামটির একটি fillপদ্ধতি রয়েছে যা এটিতে পাস করা অ্যারেটি পূরণ করে value। এটি সম্পূর্ণ অ্যারে পূরণ করে না, শুধুমাত্র সূচক দ্বারা নির্দিষ্ট করা অংশ fromএবং to.

"পদ্ধতির শুরুতে fill, পাস করা মানগুলি বৈধ কিনা তা নিশ্চিত করার জন্য পরীক্ষা করা হয়। যদি from0-এর কম হয়, বা যদি toঅ্যারের দৈর্ঘ্যের চেয়ে বেশি হয়, তাহলে fillপদ্ধতিটি অবিলম্বে বন্ধ হয়ে যায় (একটি returnবিবৃতি কার্যকর করে)।"

"বুঝতে পেরেছি। এই সব বিবৃতি কি তাই?"

"আসলে, returnবিবৃতিটি আপনার ধারণার চেয়ে অনেক বেশি কার্যকর। এটি এতই কার্যকর যে এটি জাভাতে প্রায় প্রতিটি পদ্ধতিতে পাওয়া যায়। এবং এখন আমি আপনাকে বোঝার দিকে নিয়ে যাব কেন এটি এমন।

ফলাফল সহ পদ্ধতি,void

"আপনি সম্ভবত মনে রাখবেন যে বিবৃতি আছে, এবং অভিব্যক্তি আছে . তাদের মধ্যে পার্থক্য কি?"

"যদি আমি ভুল না করি, একটি অভিব্যক্তি, একটি বিবৃতি থেকে ভিন্ন, একটি অর্থ আছে যা কোথাও ব্যবহার করা যেতে পারে।"

"সঠিক। এবং, জাভাতে, পদ্ধতিগুলিরও একটি মান থাকতে পারে। এবং এটি খুব ভাল খবর: পদ্ধতিগুলি কেবল ইনপুট প্যারামিটারের উপর ভিত্তি করে কিছু করতে সক্ষম নয়, উদাহরণস্বরূপ, কিছু মূল্যায়ন করতে এবং ফলাফল ফেরত দিতে পারে। গণনা _

"যাইহোক, আপনি ইতিমধ্যে এই ধরনের পদ্ধতির সম্মুখীন হয়েছেন:

double delta = Math.abs(d1 - d2);
পদ্ধতি abs()একটি ডবল রিটার্ন
Scanner console = new Scanner(System.in);
int x = console.nextInt();

পদ্ধতি nextInt()একটি রিটার্নint
String str = "Hello";
String s2 = str.toUpperCase();
পদ্ধতিটি toUpperCase()একটি রিটার্ন করেString
int[] data = {1, 4, 5, 6, 7, 8, 11};
int[] array = Arrays.copyOf(data, 4);

পদ্ধতি copyOf()একটি রিটার্নint[]

"প্রতিটি পদ্ধতি শুধুমাত্র একটি পূর্বনির্ধারিত প্রকারের একটি মান ফেরত দিতে পারে । যখন পদ্ধতিটি ঘোষণা করা হয় তখন রিটার্নের ধরনটি নির্ধারিত হয়:

public static Type name(parameters)
{
  method body
}

nameপদ্ধতির নাম কোথায় , parametersপদ্ধতির পরামিতিগুলির তালিকা এবং typeপদ্ধতিটি যে ফলাফল দেয় তার ধরন।

যে পদ্ধতিগুলি কিছুই ফেরত দেয় তার জন্য একটি বিশেষ স্থানধারক প্রকার রয়েছে void:

"অন্য কথায়, যদি আমি আমার পদ্ধতি লিখি এবং কিছু ফেরত দিতে না চাই, তাহলে আমি পদ্ধতির ধরনটি ঘোষণা করি void, এবং এটাই?"

"হ্যাঁ। এবং, আমাকে অবশ্যই বলতে হবে যে জাভাতে এই ধরনের অনেক পদ্ধতি রয়েছে।

একটি ফলাফল ফিরে

"আমি খুঁজে বের করেছি কিভাবে একটি পদ্ধতি ঘোষণা করতে হয় যা একটি গণনা/কাজের ফলাফল প্রদান করে। কিভাবে আমি নিজেই পদ্ধতি থেকে ফলাফল ফেরত দেব?"

"এটি একটি বৈধ প্রশ্ন। returnবিবৃতিটি আমাদের এখানে আবার সাহায্য করে। একটি পদ্ধতি থেকে ফলাফল পাস করা এইরকম দেখায়:

return value;

" returnবিবৃতিটি অবিলম্বে পদ্ধতিটিকে বন্ধ করে দেবে৷ এবং valueএটি প্রস্থান করার সময় পদ্ধতিটি কলিং পদ্ধতিতে ফিরে আসবে৷ পদ্ধতির ঘোষণায় উল্লেখিত পদ্ধতির valueসাথে অবশ্যই মেলে ৷ আপনি যা শিখেছেন তা শক্তিশালী করার জন্য এখানে কিছু উদাহরণ রয়েছে:Type

উদাহরণ 1. পদ্ধতিটি ন্যূনতম দুটি সংখ্যা গণনা করে:

int min(int a, int b)
{
   if (a < b)
     return a;
   else
     return b;
}
পদ্ধতিটি সর্বনিম্ন দুটি সংখ্যা প্রদান করে।

ফিরলে অন্যথায় ফিরুন a < b
_a

b

উদাহরণ 2. পদ্ধতিটি এটিতে পাস করা স্ট্রিংটির নকল করে n:

String multiple(String str, int times)
{
   String result = "";

   for (int i = 0; i < times; i++);
     result = result + " "+ str;
   return result;
}
পদ্ধতিতে দুটি পরামিতি লাগে — একটি স্ট্রিং এবং কতবার স্ট্রিং পুনরাবৃত্তি করা উচিত।
ভবিষ্যতের ফলাফলের জন্য একটি খালি স্ট্রিং তৈরি করা হয়।

পুনরাবৃত্তি সহ একটি লুপে times, একটি স্পেস এবং স্ট্রিং strস্ট্রিং এ যোগ করা হয় result। পদ্ধতির ফলাফল হিসাবে
স্ট্রিংটি ফেরত দেওয়া হয়।result

উদাহরণ 3: পদ্ধতিটি টারনারি অপারেটর ব্যবহার করে সর্বাধিক দুটি সংখ্যা গণনা করে:

int max(int a, int b)
{
   return (a > b ? a : b);
}
পদ্ধতিটি সর্বাধিক দুটি সংখ্যা প্রদান করে।

প্রত্যাবর্তন (যদি a > b, তারপর a, অন্যথায় b)

"চমৎকার। পদ্ধতি আমার নতুন পরাশক্তি!"

"কেবল যদি আপনি হাতে-কলমে যথেষ্ট অনুশীলন করেন। বারবার।