假设:
static class Question {
// stuff
List<Value> values
static class Value {
// stuff
}
当我跑步时:
Question question = new Question()
question.id = "whatever"
if (it == QuestionType.SELECT || it == QuestionType.MULTICHOICE) {
question.values = [new Question.Value(), new Question.Value()]
for (Question.Value v : question.values) {
// stuff
}
question.values
包含一系列Question对象而非Value。
Intellij没有给我任何错误或警告。我尝试评估&#34;新问题。值()&#34;在调试期间,它正确构造了一个Value对象。
但是,如果我使用静态导入:
import static <path>.Question.*
从而将if
内容转换为:
question.values = [new Value(), new Value()]
for (Value v : question.values) {
// stuff
}
然后我正确地得到了一个Value对象数组!
对我来说没有任何意义......请有人开导我吗?