这主要是my previous question的后续问题。 我正在使用ArcGIS javascript API。我需要运行查询才能选择用户刚刚单击的对象。单击图层时,应运行查询。现在可以识别execute方法,但不能正常工作。它应该处理查询并调用一个函数'Selectie',它通过execute添加参数'featureSet',如here所述。 该函数永远不会运行,无论它包含什么。相关代码:
package stuff;
import java.util.ArrayList;
import javax.swing.JOptionPane;
public class Simon {
String s = "";
String a = "";
String c = "";
String d = "";
boolean b = true;
boolean b2 = true;
String obj[] = { "Red", "Yellow", "Green", "Blue" };
ArrayList<String> colors = new ArrayList<String>();
String[] options = new String[] { "Red", "Yellow", "Green", "Blue" };
int count = 0;
int count2 = 0;
int score = 0;
public String simon() {
do {
int c = ((int) (Math.random() * 4));
if (c == 0)
colors.add(obj[0]);
else if (c == 1)
colors.add(obj[1]);
else if (c == 2)
colors.add(obj[2]);
else if (c == 3)
colors.add(obj[3]);
else {
JOptionPane.showMessageDialog(null,
"weird stuff happened bruh");
}
JOptionPane.showMessageDialog(null, colors.get(count));
b2 = true;
while (b2) {
for (int i2 = 0; i2 < colors.size(); i2++) {
a = JOptionPane.showInputDialog("put letter");
if(a != null){
if (a.equalsIgnoreCase(colors.get(i2))) {
JOptionPane.showMessageDialog(null,
"Your color is right" + score);
score += 1;
if (i2 == colors.size() - 1)
b2 = false;
else {
JOptionPane.showMessageDialog(null, "weird stuff happened bruh fo realz");
}
} else {
b2 = false;
b = false;
}
}else{
System.exit(0);
}
}
}
count++;
} while (b == false);
return s;
}
}
这个问题让我完全无法取得任何进展,而我现在能想到的唯一选择就是手动创建带有所需数据的多边形,这显然是极度浪费时间,考虑到这个查询可以达到同样的效果,如果它奏效了。