我仅在1周前才开始使用Java编程,因此对所有不良代码感到抱歉.
我一直在从以前玩过的游戏中重新创建“优化系统”,因为我认为这对于初学者项目来说是个好主意.该系统根据成功百分比来改善装备.随着您获得更高的细化度,百分比机会降低.
我项目中的一种优化方法是,每次失败的优化都不会将您的优化级别重置为0,而是每次失败时都会将优化级别降低1.
我已经成功创建了一种方法,该方法在失败时会重置为0,但是似乎无法弄清楚在失败时如何将级别降低1.
所以我的问题是,如何使我的“优化级别”在失败时减少1,而不是重置为0.此外,控制台在失败时需要返回到上一个IF语句,否则它将无法正常工作.
这是我的尝试:
import java.util.Random;
public class Tisha {
public static void main(String[] args) throws InterruptedException {
if (new Random().nextDouble() <= 0.535) {
System.out.println("Refine successful - Refine level 1");
} else {
System.out.println("Refine failed - Refine reset");
}
Thread.sleep(250);
if (new Random().nextDouble() <= 0.335) {
System.out.println("Refine successful - Refine level 2");
} else {
System.out.println("Refine failed - Refine level 1");
}
Thread.sleep(250);
if (new Random().nextDouble() <= 0.335) {
System.out.println("Refine successful - Refine level 3");
} else {
System.out.println("Refine failed - Refine level 2");
}
Thread.sleep(250);
if (new Random().nextDouble() <= 0.335) {
System.out.println("Refine successful - Refine level 4");
} else {
System.out.println("Refine failed - Refine level 3");
}
Thread.sleep(250);
if (new Random().nextDouble() <= 0.335) {
System.out.println("Refine successful - Refine level 5");
} else {
System.out.println("Refine failed - Refine level 4");
}
Thread.sleep(250);
if (new Random().nextDouble() <= 0.335) {
System.out.println("Refine successful - Refine level 6");
} else {
System.out.println("Refine failed - Refine level 5");
}
Thread.sleep(250);
if (new Random().nextDouble() <= 0.335) {
System.out.println("Refine successful - Refine level 7");
} else {
System.out.println("Refine failed - Refine level 6");
}
Thread.sleep(250);
if (new Random().nextDouble() <= 0.335) {
System.out.println("Refine successful - Refine level 8");
} else {
System.out.println("Refine failed - Refine level 7");
}
Thread.sleep(250);
if (new Random().nextDouble() <= 0.285) {
System.out.println("Refine successful - Refine level 9");
} else {
System.out.println("Refine failed - Refine level 8");
}
Thread.sleep(250);
if (new Random().nextDouble() <= 0.235) {
System.out.println("Refine successful - Refine level 10");
} else {
System.out.println("Refine failed - Refine level 9");
}
Thread.sleep(250);
if (new Random().nextDouble() <= 0.155) {
System.out.println("Refine successful - Refine level 11");
} else {
System.out.println("Refine failed - Refine level 10");
}
Thread.sleep(250);
if (new Random().nextDouble() <= 0.085) {
System.out.println("Refine successful - Refine level 12");
} else {
System.out.println("Refine failed - Refine level 11");
}
}
}
输出:
Refine successful - Refine level 1
Refine failed - Refine level 1
Refine failed - Refine level 2
Refine failed - Refine level 3
Refine failed - Refine level 4
Refine successful - Refine level 6
Refine failed - Refine level 6
Refine failed - Refine level 7
Refine successful - Refine level 9
Refine failed - Refine level 9
Refine successful - Refine level 11
Refine successful - Refine level 12
Process finished with exit code 0
抱歉,代码混乱,我警告过您.