Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit230ab06

Browse files
committed
Add lottery snippet
1 parent91f411e commit230ab06

File tree

3 files changed

+47
-3
lines changed

3 files changed

+47
-3
lines changed

‎README.md‎

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ Update the sample application with the snippet and add a test for it. After prov
2222
###Math
2323
*[Factorial](#factorial)
2424
*[Fibonacci](#fibonacci)
25+
*[Lottery](#lottery)
2526

2627
###Media
2728
*[Capture screen](#capture-screen)
@@ -145,6 +146,21 @@ Update the sample application with the snippet and add a test for it. After prov
145146

146147
[⬆ back to top](#table-of-contents)
147148

149+
###Lottery
150+
151+
```java
152+
publicstaticInteger[] performLottery(int numNumbers,int numbersToPick) {
153+
List<Integer> numbers=newArrayList<>();
154+
for(int i=0; i< numNumbers; i++) {
155+
numbers.add(i+1);
156+
}
157+
Collections.shuffle(numbers);
158+
return numbers.subList(0, numbersToPick).toArray(newInteger[numbersToPick]);
159+
}
160+
```
161+
162+
[⬆ back to top](#table-of-contents)
163+
148164
##Media
149165

150166
###Capture screen

‎src/main/java/Library.java‎

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,7 @@
66
importjava.nio.file.Files;
77
importjava.text.ParseException;
88
importjava.text.SimpleDateFormat;
9-
importjava.util.ArrayList;
10-
importjava.util.Arrays;
11-
importjava.util.Date;
9+
importjava.util.*;
1210
importjava.util.List;
1311

1412
/*
@@ -179,4 +177,19 @@ public static List<File> listAllFiles(String path) {
179177
}
180178
returnall;
181179
}
180+
181+
/**
182+
* Generate random lottery numbers
183+
* @param numNumbers how many performLottery numbers are available (e.g. 49)
184+
* @param numbersToPick how many numbers the player needs to pick (e.g. 6)
185+
* @return array with the random numbers
186+
*/
187+
publicstaticInteger[]performLottery(intnumNumbers,intnumbersToPick) {
188+
List<Integer>numbers =newArrayList<>();
189+
for(inti =0;i <numNumbers;i++) {
190+
numbers.add(i+1);
191+
}
192+
Collections.shuffle(numbers);
193+
returnnumbers.subList(0,numbersToPick).toArray(newInteger[numbersToPick]);
194+
}
182195
}

‎src/test/java/LibraryTest.java‎

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -181,4 +181,19 @@ public void testListAllFiles() {
181181
List<File>files =Library.listAllFiles("src/test/resources");
182182
assertEquals(3,files.size());
183183
}
184+
185+
/**
186+
* Tests for {@link Library#performLottery(int, int)}
187+
*/
188+
@Test
189+
publicvoidtestPerformLottery() {
190+
Integer[]numbers0 =Library.performLottery(0,0);
191+
assertArrayEquals(newInteger[]{},numbers0);
192+
Integer[]numbers1 =Library.performLottery(1,1);
193+
assertArrayEquals(newInteger[]{1},numbers1);
194+
Integer[]numbers2 =Library.performLottery(2,2);
195+
assertEquals(2,numbers2.length);
196+
assertTrue(numbers2[0] ==1 ||numbers2[0] ==2);
197+
assertTrue(numbers2[1] ==1 ||numbers2[1] ==2);
198+
}
184199
}

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp