Fold and Sum на Java/Стакване на функции като в C#
Здравейте колеги, работя по миграцията си от С# към Java и си поставих за цел да реша тази задача напълно функционално:
https://judge.softuni.bg/Contests/Practice/Index/207#2
И наистина успях след много главоблъсканици.
Въпросът ми е към джаварите:
има ли някакъв еквивалент на тези лесни, стакнати команди като в C# функционалността. Например ето решението от C#:
var nums = Console.ReadLine().Split().Select(int.Parse).ToArray();
var topRow = nums.TakeWhile(x => (x=nums.Length/4-1)=true).Reverse().ToArray();
var middleRow = nums.Reverse().Take(nums.Length / 4).ToArray();
Например частта в джава кода ми със всички тези функции е около 10 реда.Не е и възможно да се съкрати, защото ревърс метода връща войд и трябва да се пише на нов ред. Пробвах с разни ламбда функции но не се получи. Видях че има някакви екстеншъни Guava и Apache commons, но тях джъджа ще ги приема ли?
Ако някой може да помогне със стакването на команди като в С шарп ще съм много благодарен!
Да, знам. Направих си кода точно със стриймове, но решението ми изглежда супер ненужно дълго и пренатруфено по този начин, който го направих. Няма ли начин да се линкват като в C#?