gpt4 book ai didi

java - 在数组的数组中查找模式

转载 作者:行者123 更新时间:2023-12-01 11:30:20 24 4
gpt4 key购买 nike

大家好,我目前正在学习 Java,我正在尝试制作一个程序,您也可以使用它来预订汽车旅馆房间。我正在尝试创建一种方法来搜索客人需要的天数,然后检查免费的天数和单位。我正在使用数组数组的二维数组。

    public void doSearch() {
this.redisplay();
int daysWanted = UI.askInt("Number of days required");
int days = 0;
for(int i = 0; i < NUM_UNITS; i++){
for(int j = 0; j < NUM_DAYS; j++){
if(bookings[i][j] == null){
days++;
if(daysWanted >= days && this.bookings[i] == this.bookings[i]){
this.displayCell (i, j, Color.red);
}
}
}
}
}

Image of motel program

这是程序当前的样子,上面显示的是我正在尝试执行的方法。我的问题是,当我输入多少天时,它会检查可用单位在该天数内是否免费,但我希望它是连续的。我该怎么办?感谢任何帮助,谢谢:)

最佳答案

更改此:

for(int j = 0; j < NUM_DAYS; j++){
if(bookings[i][j] == null){
days++;
if(daysWanted >= days && this.bookings[i] == this.bookings[i]){
this.displayCell (i, j, Color.red);
}
}
}

像这样:

days = 0;
int[] daysWeWant = new int[daysWanted];
for(int j = 0; j < NUM_DAYS; j++){
if(bookings[i][j] == null){
daysWeWant[days] = j;
days++;
if(daysWanted == days){
break;
}
}
else{
days = 0;
int[] daysWeWant = new int[daysWanted];
}
}
if(days== daysWanted ){
for(int j = 0 ; j< daysWanted; j++){
int day = daysWeWant [j];
this.displayCell (i, day , Color.red);
}
}

如果您这样做,如果某一天不可用,则天数为零,并继续再次搜索。

关于java - 在数组的数组中查找模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30452777/

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