此刻,我正在完成自己设定的任务: 功能应导致以下分配 1 => 5; 2 => 4; 3 => 3; 4 => 2; 5 => 1; 6 => 7; 7 => 6;
我知道我应该以某种方式使用模,并且我已经有一个解决方案6-i%7
,但是它的结果当然是6 => 0。其他值是正确的。我想避免令人不快的查询。有没有更优雅的方式?这是测试方案:
StringBuilder stb = new StringBuilder();
String expected = "1=5; 2=4; 3=3; 4=2; 5=1; 6=7; 7=6; ";
for (int i=1; i<8; i++) {
int result = ... do something with i ...
stb.append(i+"="+result+"; ");
}
assertEquals(expected, stb.toString());
答案 0 :(得分:3)
使用以下公式:
result = (12 - i) % 7 + 1
答案 1 :(得分:0)
这是我的尝试:
StringBuilder stb = new StringBuilder();
String expected = "1=5; 2=4; 3=3; 4=2; 5=1; 6=7; 7=6; ";
int j = 5;
for (int i=1; i<8; i++) {
stb.append(i + "=" + j + "; ");
j--;
if(j == 0) {
j = 7;
}
}
assertEquals(expected, stb.toString());