আমার এমন পরিস্থিতি রয়েছে যেখানে returnদুটি forলুপে নেস্টেট করা বিবৃতিটি সর্বদা তাত্ত্বিকভাবে পৌঁছে যাবে।
সংকলকটি একমত নয় এবং লুপের returnবাইরে একটি বিবৃতি প্রয়োজন for। আমি আমার বর্তমান বোধগম্যতার বাইরে এই পদ্ধতিটি অনুকূলকরণের জন্য একটি দুর্দান্ত উপায় জানতে চাই এবং আমার বিরতির বাস্তবায়নের কোনওটিই কাজ করছে বলে মনে হয় না।
সংযুক্তি একটি অ্যাসাইনমেন্ট থেকে একটি পদ্ধতি যা এলোমেলো পূর্ণসংখ্যার উত্পন্ন করে এবং দ্বিতীয় র্যান্ডম পূর্ণসংখ্যার সন্ধান না হওয়া অবধি চক্রের পুনরাবৃত্তিগুলি প্রদান করে, কোনও পদ্ধতিটি প্যারামিটার হিসাবে পদ্ধতিতে পাস করা একটি পরিসরের মধ্যে উত্পন্ন হয়।
private static int oneRun(int range) {
int[] rInt = new int[range+1]; // Stores the past sequence of ints.
rInt[0] = generator.nextInt(range); // Inital random number.
for (int count = 1; count <= range; count++) { // Run until return.
rInt[count] = generator.nextInt(range); // Add randint to current iteration.
for (int i = 0; i < count; i++) { // Check for past occurence and return if found.
if (rInt[i] == rInt[count]) {
return count;
}
}
}
return 0; // Never reached
}
oneRun(0)এবং আপনি দেখতে পাচ্ছেন যে আপনি দ্রুত আপনার অ্যাক্সেসযোগ্যতে পৌঁছেছেনreturn
nextIntব্যতিক্রম ছুঁড়ে ফেলা হয়েছে range < 0কেবল যেখানে প্রত্যাবর্তন পৌঁছেছে তা হলrange == 0
while(true)কোনও সূচকযুক্ত লুপের পরিবর্তে একটি ব্যবহার করতে পারেন । এটি সংকলককে বলে যে লুপটি আর ফিরে আসবে না।