Update all new Tasks
This commit is contained in:
parent
00a190b0a6
commit
91df62d461
5697 changed files with 93386 additions and 804 deletions
48
Task/Nth/Java/nth-2.java
Normal file
48
Task/Nth/Java/nth-2.java
Normal file
|
|
@ -0,0 +1,48 @@
|
|||
package nth;
|
||||
|
||||
import java.util.stream.IntStream;
|
||||
import java.util.stream.Stream;
|
||||
|
||||
public interface Nth {
|
||||
public static String suffix(int n){
|
||||
if(n % 100 / 10 == 1){
|
||||
return "th"; //teens are all "th"
|
||||
}
|
||||
switch(n % 10){
|
||||
case 1: return "st";
|
||||
case 2: return "nd";
|
||||
case 3: return "rd";
|
||||
default: return "th"; //most of the time it should be "th"
|
||||
}
|
||||
}
|
||||
|
||||
public static void print(int start, int end) {
|
||||
IntStream.rangeClosed(start, end)
|
||||
.parallel()
|
||||
.mapToObj(i -> i + suffix(i) + " ")
|
||||
.reduce(String::concat)
|
||||
.ifPresent(System.out::println)
|
||||
;
|
||||
}
|
||||
|
||||
public static void print(int[] startAndEnd) {
|
||||
print(startAndEnd[0], startAndEnd[1]);
|
||||
}
|
||||
|
||||
public static int[] startAndEnd(int start, int end) {
|
||||
return new int[] {
|
||||
start,
|
||||
end
|
||||
};
|
||||
}
|
||||
|
||||
public static void main(String... arguments){
|
||||
Stream.of(
|
||||
startAndEnd(0, 25),
|
||||
startAndEnd(250, 265),
|
||||
startAndEnd(1000, 1025)
|
||||
)
|
||||
.forEach(Nth::print)
|
||||
;
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue