我正在使用package com.example.apple.onlinesql;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.widget.TextView;
public class Answer extends AppCompatActivity {
TextView questionTextView, answerTextView;
String question, answer;
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_answer);
Bundle bundle = getIntent().getExtras();
question = bundle.getString("question");
answer = bundle.getString("answer");
/*cannot resolve symbol findViewById()*/
questionTextView = (TextView) findViewById(R.id.questionTextView);
answerTextView = (TextView) findViewById(R.id.answerTextView);
questionTextView.setText(question);
answerTextView.setText(answer);
}
}
库查看计算机上的所有文件。一旦我检查了100条记录,我想停止循环。如果永远不会调用scandir
语句,我的变量yield
永远不会增加,循环也不会停止。我已经放入了一些永远不会找到的虚假文件名c
,因此永远无法找到thisfilewontbefound
。为什么yield
没有递增?
c
答案 0 :(得分:1)
您的for
循环正在等待生成器。如果执行yield
,生成器将仅生成一个值。但yield
永远不会被执行,因为没有这样的文件,因此for
循环会等待很长时间,直到C:
驱动器上的所有文件为止扫描并且发电机结束时没有产生任何东西。
将计数器放入发生器中,或者不对发生器中的文件进行过滤,让它更频繁地产生。