এর সাথে একটি সমাধান reduce()
:
int[] array = {23, 3, 56, 97, 42};
// directly print out
Arrays.stream(array).reduce((x, y) -> x > y ? x : y).ifPresent(System.out::println);
// get the result as an int
int res = Arrays.stream(array).reduce((x, y) -> x > y ? x : y).getAsInt();
System.out.println(res);
>>
97
97
উপরের কোডে, ফর্ম্যাটে reduce()
ডেটা ফেরত দেয় Optional
যা আপনি int
দ্বারা রূপান্তর করতে পারেন getAsInt()
।
আমরা যদি একটি নির্দিষ্ট সংখ্যার সাথে সর্বাধিক মানটি তুলনা করতে চাই, তবে আমরা এখানে একটি সূচনা মান সেট করতে পারি reduce()
:
int[] array = {23, 3, 56, 97, 42};
// e.g., compare with 100
int max = Arrays.stream(array).reduce(100, (x, y) -> x > y ? x : y);
System.out.println(max);
>>
100
উপরের কোডে, যখন reduce()
প্রথম পরামিতি হিসাবে একটি পরিচয় (শুরুর মান) হয়, তখন এটি পরিচয় সহ একই ফর্ম্যাটে ডেটা ফেরত দেয়। এই সম্পত্তি সহ, আমরা অন্যান্য অ্যারেতে এই সমাধানটি প্রয়োগ করতে পারি:
double[] array = {23.1, 3, 56.6, 97, 42};
double max = Arrays.stream(array).reduce(array[0], (x, y) -> x > y ? x : y);
System.out.println(max);
>>
97.0
Collections.max(Arrays.asList())
. com / প্রশ্নস / 703770০২৯৯/… এরপরে ।