Automate tasks with LambdasWeekend Challenge - Poker Hand EvaluationToo much fun with EnumMap-related features and lambdas?Collatz conjecture using Java lambdasSimple calculator implemented with lambdasCustom Serialization of Game WorldFinding the total time elapsed in the union of time intervalsCreating a pipeline operator in JavaCompare 2 unordered, rooted trees for shape-isomorphismThreads with lambdas and runnable in JavaObject-oriented calculator
What does "classe [year]" mean, in a biography?
What's a good use case for SELECT * in production code?
If password expiration is applied, should door-lock expiration be applied too?
Pointlessly recurse down the alphabet
What is this nut?
Is there a sonic boom when flying nearby?
Can Vice President Pence be impeached before President Trump?
Re. Office 365, how do I delete my name from the blue title bar of a Word document, AS WELL AS the pink circle next to it that has my initials in it
Can we purchase addon to increase limits on SingleEmail Apex limits?
How does "unlimited holidays" work in practice?
Is the axiom of choice needed in proving that metric spaces in which every infinite subset has a limit point are compact?
Why would Earth be long-term unsuitable for an advanced alien species that's already colonized it?
My professor changed a take-home test to an in-class test with no notice. Can I fight the grade?
Why is it ethical for Ambassador Sondland to have been given an ambassadorship for campaign contributions?
Cheap and safe way to dim 100+ 60W Incandescent bulbs
How can I make my sealing ritual neccessary?
Why does rm manual say that we can run it without any argument, when this is not true?
What is the largest piece of space debris volumetrically?
What anti-aircraft magic adaptation would be better for dragons than flame spitting?
Cooking with sugar makes pan very difficult to clean
Rotational Mechanics: Is Angular Acceleration Possible without any External Torque?
Employer wants me to do something explicitly illegal
Implementing a hash table with true concurrency
What are the stat modifiers (other than Dex) that can be used when calculating AC?
Automate tasks with Lambdas
Weekend Challenge - Poker Hand EvaluationToo much fun with EnumMap-related features and lambdas?Collatz conjecture using Java lambdasSimple calculator implemented with lambdasCustom Serialization of Game WorldFinding the total time elapsed in the union of time intervalsCreating a pipeline operator in JavaCompare 2 unordered, rooted trees for shape-isomorphismThreads with lambdas and runnable in JavaObject-oriented calculator
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty
margin-bottom:0;
$begingroup$
Can I use #define fori(i,n) for(int i=0;i<=n;i++)
in Java?
And of course, Java doesn't have precompiler so we cannot do that in java. So I thought we can do that fori
method either using stream()
or manually defining a method. But I thought instead of just traversing why can't I put the third parameter as lambda expression that operates.
Functional interface:
interface func
int calculate(int a,int b);
Method implementation:
int run(int[] array,int start,int end,func t)
int result =0;
for(int i=start;i<=end;i++)
System.out.println(result);
result = t.calculate(array[i], result);
return result;
Usage:
public static void main(String[] args)
int[] array = 1,2,3,4,5,3,5,3,2,2,3,2,23,2;
System.out.println(run(array, 0, 5, (a,b) -> a + b ));
I would like a review on this code pattern. My major concern is that how much complicated lambda expression I can use here. Also, what is the future scope of this what could be done with this pattern?
java
$endgroup$
add a comment
|
$begingroup$
Can I use #define fori(i,n) for(int i=0;i<=n;i++)
in Java?
And of course, Java doesn't have precompiler so we cannot do that in java. So I thought we can do that fori
method either using stream()
or manually defining a method. But I thought instead of just traversing why can't I put the third parameter as lambda expression that operates.
Functional interface:
interface func
int calculate(int a,int b);
Method implementation:
int run(int[] array,int start,int end,func t)
int result =0;
for(int i=start;i<=end;i++)
System.out.println(result);
result = t.calculate(array[i], result);
return result;
Usage:
public static void main(String[] args)
int[] array = 1,2,3,4,5,3,5,3,2,2,3,2,23,2;
System.out.println(run(array, 0, 5, (a,b) -> a + b ));
I would like a review on this code pattern. My major concern is that how much complicated lambda expression I can use here. Also, what is the future scope of this what could be done with this pattern?
java
$endgroup$
add a comment
|
$begingroup$
Can I use #define fori(i,n) for(int i=0;i<=n;i++)
in Java?
And of course, Java doesn't have precompiler so we cannot do that in java. So I thought we can do that fori
method either using stream()
or manually defining a method. But I thought instead of just traversing why can't I put the third parameter as lambda expression that operates.
Functional interface:
interface func
int calculate(int a,int b);
Method implementation:
int run(int[] array,int start,int end,func t)
int result =0;
for(int i=start;i<=end;i++)
System.out.println(result);
result = t.calculate(array[i], result);
return result;
Usage:
public static void main(String[] args)
int[] array = 1,2,3,4,5,3,5,3,2,2,3,2,23,2;
System.out.println(run(array, 0, 5, (a,b) -> a + b ));
I would like a review on this code pattern. My major concern is that how much complicated lambda expression I can use here. Also, what is the future scope of this what could be done with this pattern?
java
$endgroup$
Can I use #define fori(i,n) for(int i=0;i<=n;i++)
in Java?
And of course, Java doesn't have precompiler so we cannot do that in java. So I thought we can do that fori
method either using stream()
or manually defining a method. But I thought instead of just traversing why can't I put the third parameter as lambda expression that operates.
Functional interface:
interface func
int calculate(int a,int b);
Method implementation:
int run(int[] array,int start,int end,func t)
int result =0;
for(int i=start;i<=end;i++)
System.out.println(result);
result = t.calculate(array[i], result);
return result;
Usage:
public static void main(String[] args)
int[] array = 1,2,3,4,5,3,5,3,2,2,3,2,23,2;
System.out.println(run(array, 0, 5, (a,b) -> a + b ));
I would like a review on this code pattern. My major concern is that how much complicated lambda expression I can use here. Also, what is the future scope of this what could be done with this pattern?
java
java
edited Oct 3 at 14:33
Aashish Pawar
asked Sep 18 at 11:53
Aashish PawarAashish Pawar
1157 bronze badges
1157 bronze badges
add a comment
|
add a comment
|
2 Answers
2
active
oldest
votes
$begingroup$
The pattern you have implemented is basically a reduction
or foldLeft
method.
Compare it to the Stream#reduce
method in Java, it is very similar.
To answer your question about the complexity of the lambda to put into the method: There is no limit. You can do everything you like in there. A lambda expression is nothing more than an implementation of the single-method interface you have created. And there is no limit on the complexity of a class implementing an interface.
Now for some real code review:
Use proper and understandable names and use built-in types
Your interface is simply named func
. This probably means "function" but you don't have to save on characters, Java is already quite verbose.
What you have, is a special kind of BiFunction
or more precisely, BinaryOperator
. Now I know that generics don't allow you to specify primitive types for the generic arguments, but your func
interface is not necessary and can be replaced by a BinaryOperator<Integer>
.
Your run
method has a very generic name. Sure, there is code that is run, but it doesn't explain, what this method does.
It would be more precise to call your method reduce
or foldLeft
or something similar, that explains in the name, what this method does.
Make your method do one thing
Currently your method calculates a result and, in addition to that, prints the value of result
for every iteration. What if you or someone who uses your method does not want to have every single intermediate result printed to them?
If you want to print the intermediate values, do so in your lambda.
You wanted to think about the future
Your method currently only works with primitive integer arrays. Nothing stops you from making it work with generic types or even lists.
And if you go that far, you'll probably use streams anyway.
$endgroup$
$begingroup$
really helpful. I got your point. what should I do to define a method that supports various lambda expressions what we use in streams?
$endgroup$
– Aashish Pawar
Sep 18 at 12:37
$begingroup$
What exactly do you mean with "various lambda expressions"? You can use any expression that satisfies the interface (ie. takes two integers as input and returns one integer). You can't really chain the expressions one after another because areduce
operation is terminal and returns exactly one value.
$endgroup$
– GiantTree
Sep 18 at 13:06
$begingroup$
by Various I mean arithmetic operations .
$endgroup$
– Aashish Pawar
Sep 18 at 15:24
1
$begingroup$
Ah, yeah, you can do anything in the lambda expression. There are no limits.
$endgroup$
– GiantTree
Sep 18 at 16:25
$begingroup$
Can I delete Array elements with lambda ? Im sure that won’t be as like reduce method
$endgroup$
– Aashish Pawar
Sep 18 at 16:30
|
show 4 more comments
$begingroup$
Most is already said by GiantTree, so only one additional remark: after replacing func
with BinaryOperator
(or in this case IntBinaryOperator
) and the calculation with reduce, the only thing your run method really does is an array lookup.
You can solve this directly with the existing standard library - the following is equivalent to your code:
IntStream.rangeClosed(0, 5).map(i -> array[i]).reduce(0, (a, b) -> a + b);
My advice: don't reinvent the wheel, get a good grip on the basic libraries instead.
$endgroup$
$begingroup$
I knowIntStream
and reduce but It doesn't allow me to modify the underlying array. But In my pattern, I might modify the original array elements.
$endgroup$
– Aashish Pawar
Oct 3 at 14:29
add a comment
|
Your Answer
StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "196"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/4.0/"u003ecc by-sa 4.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fcodereview.stackexchange.com%2fquestions%2f229236%2fautomate-tasks-with-lambdas%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
$begingroup$
The pattern you have implemented is basically a reduction
or foldLeft
method.
Compare it to the Stream#reduce
method in Java, it is very similar.
To answer your question about the complexity of the lambda to put into the method: There is no limit. You can do everything you like in there. A lambda expression is nothing more than an implementation of the single-method interface you have created. And there is no limit on the complexity of a class implementing an interface.
Now for some real code review:
Use proper and understandable names and use built-in types
Your interface is simply named func
. This probably means "function" but you don't have to save on characters, Java is already quite verbose.
What you have, is a special kind of BiFunction
or more precisely, BinaryOperator
. Now I know that generics don't allow you to specify primitive types for the generic arguments, but your func
interface is not necessary and can be replaced by a BinaryOperator<Integer>
.
Your run
method has a very generic name. Sure, there is code that is run, but it doesn't explain, what this method does.
It would be more precise to call your method reduce
or foldLeft
or something similar, that explains in the name, what this method does.
Make your method do one thing
Currently your method calculates a result and, in addition to that, prints the value of result
for every iteration. What if you or someone who uses your method does not want to have every single intermediate result printed to them?
If you want to print the intermediate values, do so in your lambda.
You wanted to think about the future
Your method currently only works with primitive integer arrays. Nothing stops you from making it work with generic types or even lists.
And if you go that far, you'll probably use streams anyway.
$endgroup$
$begingroup$
really helpful. I got your point. what should I do to define a method that supports various lambda expressions what we use in streams?
$endgroup$
– Aashish Pawar
Sep 18 at 12:37
$begingroup$
What exactly do you mean with "various lambda expressions"? You can use any expression that satisfies the interface (ie. takes two integers as input and returns one integer). You can't really chain the expressions one after another because areduce
operation is terminal and returns exactly one value.
$endgroup$
– GiantTree
Sep 18 at 13:06
$begingroup$
by Various I mean arithmetic operations .
$endgroup$
– Aashish Pawar
Sep 18 at 15:24
1
$begingroup$
Ah, yeah, you can do anything in the lambda expression. There are no limits.
$endgroup$
– GiantTree
Sep 18 at 16:25
$begingroup$
Can I delete Array elements with lambda ? Im sure that won’t be as like reduce method
$endgroup$
– Aashish Pawar
Sep 18 at 16:30
|
show 4 more comments
$begingroup$
The pattern you have implemented is basically a reduction
or foldLeft
method.
Compare it to the Stream#reduce
method in Java, it is very similar.
To answer your question about the complexity of the lambda to put into the method: There is no limit. You can do everything you like in there. A lambda expression is nothing more than an implementation of the single-method interface you have created. And there is no limit on the complexity of a class implementing an interface.
Now for some real code review:
Use proper and understandable names and use built-in types
Your interface is simply named func
. This probably means "function" but you don't have to save on characters, Java is already quite verbose.
What you have, is a special kind of BiFunction
or more precisely, BinaryOperator
. Now I know that generics don't allow you to specify primitive types for the generic arguments, but your func
interface is not necessary and can be replaced by a BinaryOperator<Integer>
.
Your run
method has a very generic name. Sure, there is code that is run, but it doesn't explain, what this method does.
It would be more precise to call your method reduce
or foldLeft
or something similar, that explains in the name, what this method does.
Make your method do one thing
Currently your method calculates a result and, in addition to that, prints the value of result
for every iteration. What if you or someone who uses your method does not want to have every single intermediate result printed to them?
If you want to print the intermediate values, do so in your lambda.
You wanted to think about the future
Your method currently only works with primitive integer arrays. Nothing stops you from making it work with generic types or even lists.
And if you go that far, you'll probably use streams anyway.
$endgroup$
$begingroup$
really helpful. I got your point. what should I do to define a method that supports various lambda expressions what we use in streams?
$endgroup$
– Aashish Pawar
Sep 18 at 12:37
$begingroup$
What exactly do you mean with "various lambda expressions"? You can use any expression that satisfies the interface (ie. takes two integers as input and returns one integer). You can't really chain the expressions one after another because areduce
operation is terminal and returns exactly one value.
$endgroup$
– GiantTree
Sep 18 at 13:06
$begingroup$
by Various I mean arithmetic operations .
$endgroup$
– Aashish Pawar
Sep 18 at 15:24
1
$begingroup$
Ah, yeah, you can do anything in the lambda expression. There are no limits.
$endgroup$
– GiantTree
Sep 18 at 16:25
$begingroup$
Can I delete Array elements with lambda ? Im sure that won’t be as like reduce method
$endgroup$
– Aashish Pawar
Sep 18 at 16:30
|
show 4 more comments
$begingroup$
The pattern you have implemented is basically a reduction
or foldLeft
method.
Compare it to the Stream#reduce
method in Java, it is very similar.
To answer your question about the complexity of the lambda to put into the method: There is no limit. You can do everything you like in there. A lambda expression is nothing more than an implementation of the single-method interface you have created. And there is no limit on the complexity of a class implementing an interface.
Now for some real code review:
Use proper and understandable names and use built-in types
Your interface is simply named func
. This probably means "function" but you don't have to save on characters, Java is already quite verbose.
What you have, is a special kind of BiFunction
or more precisely, BinaryOperator
. Now I know that generics don't allow you to specify primitive types for the generic arguments, but your func
interface is not necessary and can be replaced by a BinaryOperator<Integer>
.
Your run
method has a very generic name. Sure, there is code that is run, but it doesn't explain, what this method does.
It would be more precise to call your method reduce
or foldLeft
or something similar, that explains in the name, what this method does.
Make your method do one thing
Currently your method calculates a result and, in addition to that, prints the value of result
for every iteration. What if you or someone who uses your method does not want to have every single intermediate result printed to them?
If you want to print the intermediate values, do so in your lambda.
You wanted to think about the future
Your method currently only works with primitive integer arrays. Nothing stops you from making it work with generic types or even lists.
And if you go that far, you'll probably use streams anyway.
$endgroup$
The pattern you have implemented is basically a reduction
or foldLeft
method.
Compare it to the Stream#reduce
method in Java, it is very similar.
To answer your question about the complexity of the lambda to put into the method: There is no limit. You can do everything you like in there. A lambda expression is nothing more than an implementation of the single-method interface you have created. And there is no limit on the complexity of a class implementing an interface.
Now for some real code review:
Use proper and understandable names and use built-in types
Your interface is simply named func
. This probably means "function" but you don't have to save on characters, Java is already quite verbose.
What you have, is a special kind of BiFunction
or more precisely, BinaryOperator
. Now I know that generics don't allow you to specify primitive types for the generic arguments, but your func
interface is not necessary and can be replaced by a BinaryOperator<Integer>
.
Your run
method has a very generic name. Sure, there is code that is run, but it doesn't explain, what this method does.
It would be more precise to call your method reduce
or foldLeft
or something similar, that explains in the name, what this method does.
Make your method do one thing
Currently your method calculates a result and, in addition to that, prints the value of result
for every iteration. What if you or someone who uses your method does not want to have every single intermediate result printed to them?
If you want to print the intermediate values, do so in your lambda.
You wanted to think about the future
Your method currently only works with primitive integer arrays. Nothing stops you from making it work with generic types or even lists.
And if you go that far, you'll probably use streams anyway.
answered Sep 18 at 12:23
GiantTreeGiantTree
6185 silver badges9 bronze badges
6185 silver badges9 bronze badges
$begingroup$
really helpful. I got your point. what should I do to define a method that supports various lambda expressions what we use in streams?
$endgroup$
– Aashish Pawar
Sep 18 at 12:37
$begingroup$
What exactly do you mean with "various lambda expressions"? You can use any expression that satisfies the interface (ie. takes two integers as input and returns one integer). You can't really chain the expressions one after another because areduce
operation is terminal and returns exactly one value.
$endgroup$
– GiantTree
Sep 18 at 13:06
$begingroup$
by Various I mean arithmetic operations .
$endgroup$
– Aashish Pawar
Sep 18 at 15:24
1
$begingroup$
Ah, yeah, you can do anything in the lambda expression. There are no limits.
$endgroup$
– GiantTree
Sep 18 at 16:25
$begingroup$
Can I delete Array elements with lambda ? Im sure that won’t be as like reduce method
$endgroup$
– Aashish Pawar
Sep 18 at 16:30
|
show 4 more comments
$begingroup$
really helpful. I got your point. what should I do to define a method that supports various lambda expressions what we use in streams?
$endgroup$
– Aashish Pawar
Sep 18 at 12:37
$begingroup$
What exactly do you mean with "various lambda expressions"? You can use any expression that satisfies the interface (ie. takes two integers as input and returns one integer). You can't really chain the expressions one after another because areduce
operation is terminal and returns exactly one value.
$endgroup$
– GiantTree
Sep 18 at 13:06
$begingroup$
by Various I mean arithmetic operations .
$endgroup$
– Aashish Pawar
Sep 18 at 15:24
1
$begingroup$
Ah, yeah, you can do anything in the lambda expression. There are no limits.
$endgroup$
– GiantTree
Sep 18 at 16:25
$begingroup$
Can I delete Array elements with lambda ? Im sure that won’t be as like reduce method
$endgroup$
– Aashish Pawar
Sep 18 at 16:30
$begingroup$
really helpful. I got your point. what should I do to define a method that supports various lambda expressions what we use in streams?
$endgroup$
– Aashish Pawar
Sep 18 at 12:37
$begingroup$
really helpful. I got your point. what should I do to define a method that supports various lambda expressions what we use in streams?
$endgroup$
– Aashish Pawar
Sep 18 at 12:37
$begingroup$
What exactly do you mean with "various lambda expressions"? You can use any expression that satisfies the interface (ie. takes two integers as input and returns one integer). You can't really chain the expressions one after another because a
reduce
operation is terminal and returns exactly one value.$endgroup$
– GiantTree
Sep 18 at 13:06
$begingroup$
What exactly do you mean with "various lambda expressions"? You can use any expression that satisfies the interface (ie. takes two integers as input and returns one integer). You can't really chain the expressions one after another because a
reduce
operation is terminal and returns exactly one value.$endgroup$
– GiantTree
Sep 18 at 13:06
$begingroup$
by Various I mean arithmetic operations .
$endgroup$
– Aashish Pawar
Sep 18 at 15:24
$begingroup$
by Various I mean arithmetic operations .
$endgroup$
– Aashish Pawar
Sep 18 at 15:24
1
1
$begingroup$
Ah, yeah, you can do anything in the lambda expression. There are no limits.
$endgroup$
– GiantTree
Sep 18 at 16:25
$begingroup$
Ah, yeah, you can do anything in the lambda expression. There are no limits.
$endgroup$
– GiantTree
Sep 18 at 16:25
$begingroup$
Can I delete Array elements with lambda ? Im sure that won’t be as like reduce method
$endgroup$
– Aashish Pawar
Sep 18 at 16:30
$begingroup$
Can I delete Array elements with lambda ? Im sure that won’t be as like reduce method
$endgroup$
– Aashish Pawar
Sep 18 at 16:30
|
show 4 more comments
$begingroup$
Most is already said by GiantTree, so only one additional remark: after replacing func
with BinaryOperator
(or in this case IntBinaryOperator
) and the calculation with reduce, the only thing your run method really does is an array lookup.
You can solve this directly with the existing standard library - the following is equivalent to your code:
IntStream.rangeClosed(0, 5).map(i -> array[i]).reduce(0, (a, b) -> a + b);
My advice: don't reinvent the wheel, get a good grip on the basic libraries instead.
$endgroup$
$begingroup$
I knowIntStream
and reduce but It doesn't allow me to modify the underlying array. But In my pattern, I might modify the original array elements.
$endgroup$
– Aashish Pawar
Oct 3 at 14:29
add a comment
|
$begingroup$
Most is already said by GiantTree, so only one additional remark: after replacing func
with BinaryOperator
(or in this case IntBinaryOperator
) and the calculation with reduce, the only thing your run method really does is an array lookup.
You can solve this directly with the existing standard library - the following is equivalent to your code:
IntStream.rangeClosed(0, 5).map(i -> array[i]).reduce(0, (a, b) -> a + b);
My advice: don't reinvent the wheel, get a good grip on the basic libraries instead.
$endgroup$
$begingroup$
I knowIntStream
and reduce but It doesn't allow me to modify the underlying array. But In my pattern, I might modify the original array elements.
$endgroup$
– Aashish Pawar
Oct 3 at 14:29
add a comment
|
$begingroup$
Most is already said by GiantTree, so only one additional remark: after replacing func
with BinaryOperator
(or in this case IntBinaryOperator
) and the calculation with reduce, the only thing your run method really does is an array lookup.
You can solve this directly with the existing standard library - the following is equivalent to your code:
IntStream.rangeClosed(0, 5).map(i -> array[i]).reduce(0, (a, b) -> a + b);
My advice: don't reinvent the wheel, get a good grip on the basic libraries instead.
$endgroup$
Most is already said by GiantTree, so only one additional remark: after replacing func
with BinaryOperator
(or in this case IntBinaryOperator
) and the calculation with reduce, the only thing your run method really does is an array lookup.
You can solve this directly with the existing standard library - the following is equivalent to your code:
IntStream.rangeClosed(0, 5).map(i -> array[i]).reduce(0, (a, b) -> a + b);
My advice: don't reinvent the wheel, get a good grip on the basic libraries instead.
answered Sep 18 at 15:14
mtjmtj
3,1793 silver badges14 bronze badges
3,1793 silver badges14 bronze badges
$begingroup$
I knowIntStream
and reduce but It doesn't allow me to modify the underlying array. But In my pattern, I might modify the original array elements.
$endgroup$
– Aashish Pawar
Oct 3 at 14:29
add a comment
|
$begingroup$
I knowIntStream
and reduce but It doesn't allow me to modify the underlying array. But In my pattern, I might modify the original array elements.
$endgroup$
– Aashish Pawar
Oct 3 at 14:29
$begingroup$
I know
IntStream
and reduce but It doesn't allow me to modify the underlying array. But In my pattern, I might modify the original array elements.$endgroup$
– Aashish Pawar
Oct 3 at 14:29
$begingroup$
I know
IntStream
and reduce but It doesn't allow me to modify the underlying array. But In my pattern, I might modify the original array elements.$endgroup$
– Aashish Pawar
Oct 3 at 14:29
add a comment
|
Thanks for contributing an answer to Code Review Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
Use MathJax to format equations. MathJax reference.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fcodereview.stackexchange.com%2fquestions%2f229236%2fautomate-tasks-with-lambdas%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown