for(i=1 ; i <=runAtlas.textureNames.count ; i++){ }显示C-style for statement has been removed in Swift 3
时间: 2024-05-16 21:15:06 浏览: 7
在Swift 3中,C-style for循环语句被移除了。您可以使用Swift 3中的for-in循环来替代它,例如:
```
for textureName in runAtlas.textureNames {
// your code here
}
```
或者,您也可以使用Swift的高级函数(如map,filter和reduce)来处理数组中的元素。例如,使用map函数:
```
runAtlas.textureNames.map { textureName in
// your code here
}
```
相关问题
改正错误#include <stdlib.h> #include <iostream.h> int n = 20; int ClrMinus(int Arr,int m); int main() { int arr[n]={0},i; for(i=0;i<n;i++) { arr[i]=rand()%100-30; cout<<arr[i]<<'\t'; } cout<<endl; cout<<"Negative Number is"<<ClrMinus(arr[n],n)<<endl; cout<<"The Array Removed Negative Number is:\n"; for(i=0;i<=n;i++) if(arr[i]=0) cout<<arr[i]<<'\t'; cout<<endl; return 0; } int ClrMinus(int Arr[],int m) { int count=0; for(int i=0;i<m;i++) { if(Arr[i]<0) { Arr[i]=0; count++; } } return count; }
修改后的代码如下:
```c++
#include <cstdlib>
#include <iostream>
using namespace std;
const int n = 20;
int ClrMinus(int Arr[], int m);
int main() {
int arr[n] = {0};
int i;
for (i = 0; i < n; i++) {
arr[i] = rand() % 100 - 30;
cout << arr[i] << '\t';
}
cout << endl;
cout << "Negative Number is " << ClrMinus(arr, n) << endl;
cout << "The Array Removed Negative Number is:\n";
for (i = 0; i < n; i++) {
if (arr[i] != 0) {
cout << arr[i] << '\t';
}
}
cout << endl;
return 0;
}
int ClrMinus(int Arr[], int m) {
int count = 0;
for (int i = 0; i < m; i++) {
if (Arr[i] < 0) {
Arr[i] = 0;
count++;
}
}
return count;
}
```
主要的修改如下:
- 修改头文件,将 `stdlib.h` 和 `iostream.h` 改为 `cstdlib` 和 `iostream`。
- 修改函数参数,将 `ClrMinus(int Arr, int m)` 改为 `ClrMinus(int Arr[], int m)`。
- 修改传参方式,将 `ClrMinus(arr[n], n)` 改为 `ClrMinus(arr, n)`。
- 修改输出内容,将 `if (arr[i] = 0)` 改为 `if (arr[i] != 0)`,并在循环外层加上大括号。
- 修改数组访问越界错误,将 `for (i = 0; i <= n; i++)` 改为 `for (i = 0; i < n; i++)`。
private static boolean delwarehouse(String gid){ for (int i = 0; i<c.size();i++){ if (c.get(i).getGid().equalsIgnoreCase(gid)){ c.remove(i); return true; } } return false; }检测错误并修正
这段代码看起来没有语法错误,但是可能存在逻辑错误。根据这段代码的功能,它的目的是从一个名为 `c` 的集合中删除具有特定 `gid` 的对象。但是,如果 `c` 集合中有多个对象具有相同的 `gid`,那么只有第一个对象会被删除。因此,这段代码应该被修改为:
```
private static boolean delwarehouse(String gid) {
boolean removed = false;
Iterator<Warehouse> iterator = c.iterator();
while (iterator.hasNext()) {
Warehouse warehouse = iterator.next();
if (warehouse.getGid().equalsIgnoreCase(gid)) {
iterator.remove();
removed = true;
}
}
return removed;
}
```
这个版本使用了 `Iterator` 来遍历集合,并且能够删除具有指定 `gid` 的所有对象。还注意到,如果没有找到具有指定 `gid` 的对象,函数返回 `false`,否则返回 `true`。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)