gpt4 book ai didi

java - 如何让用户结束这个程序?

转载 作者:太空宇宙 更新时间:2023-11-04 12:14:37 25 4
gpt4 key购买 nike

// ************************************************************
// ELEVATOR.java
//
// ELEVAOTR SIMULATION
// PROBLEM: NEED TO FIND A WAY TO AMKE IT SO THAT THE PROGRAM KEEPS RNNING AFTER USER INPUTS
// THIER FIRST DESIRED FLOOR.
// ************************************************************
import java.util.*;


public class Elevator_Simulation {

public static void main (String[] args) {
Person User = new Person();
Floor floors = new Floor();
floors.moveElevator(User.getDesiredFloor());

}
}

class Elevator { //NEEDS SETTER & GETTER METHODS
private int mass=0;
private int capcity=0;
private String name="";
private String color="";
}

class Floor {


ArrayList<Object> floorLevel = new ArrayList<Object>();

Elevator Lift = new Elevator();
Person Man = new Person();

Floor() { //Floors 0-9
floorLevel.add(Lift); //0
floorLevel.add(null); //1
floorLevel.add(null); //2
floorLevel.add(null); //3
floorLevel.add(null); //4
floorLevel.add(null); //5
floorLevel.add(null); //6
floorLevel.add(null); //7
floorLevel.add(null); //8
floorLevel.add(null); //9
}
System.out.println("Elevator is at Floor: " + floorLevel.indexOf(Lift) );


public void moveElevator (int chosenFloor) {

if (chosenFloor > 9) {
System.out.println("Woooooah Buddy! You can only choose 0-9!");
return;
}
if (chosenFloor == floorLevel.indexOf(Lift)) {
System.out.println("Bro you're already on that floor...");
}

while (floorLevel.indexOf(Lift)>chosenFloor) {
Collections.swap(floorLevel, floorLevel.indexOf(Lift), ( floorLevel.indexOf(Lift)-1 ) );
System.out.println(floorLevel.indexOf(Lift) );
}
while (floorLevel.indexOf(Lift)<chosenFloor) {
Collections.swap(floorLevel, floorLevel.indexOf(Lift), ( floorLevel.indexOf(Lift)+1 ) );
System.out.println(floorLevel.indexOf(Lift) );
}

}
}

class Person {
Scanner scan = new Scanner(System.in);
public int getDesiredFloor() {
int desiredFloor = scan.nextInt();
return desiredFloor;
}
}

上面是一个电梯模拟器代码(在我尝试用 GUI 制作一个之前),除了明显的初学者缺陷之外,我唯一的问题是我很难找到一种方法来制作它,以便程序不会在用户输入一层后就结束。我至少希望程序运行直到用户用命令结束它。我正在考虑在某个地方使用 while 循环,但是在哪里?请帮助并指出我在此代码中需要改进的任何内容。

最佳答案

您可以在该行周围放置 while 循环

floors.moveElevator(User.getDesiredFloor());

只需为代表退出的值添加输入检查即可。

关于java - 如何让用户结束这个程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39542065/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com