プログラムで別のクラスのオブジェクトのリストを作成しようとしています。リスト内の特定のオブジェクトにアクセスし、そのオブジェクトを使用してクラスからデータを取得できるようにしたいと考えています。オブジェクトを作成する元のクラスは次のとおりです。
public class objectdata extends Activity {
int number=0;
String word="";
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
}
public objectdata(int num, String word){
number = num;
word = word;
}
}
オブジェクトがリストに追加され、オブジェクトにアクセスしたいクラスは次のとおりです。
public class MainActivity extends Activity {
TextView tv;
ArrayList<Object> objarray = new ArrayList<Object>(2);
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
makeObjects();
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
public void makeObjects(){
//For loop creates two objects and adds them to the list
for(int i = 0; i < 3; i++) {
int number=1;
String word="One";
number++;
objectdata o = new objectdata(number, word);
objarray.add(o);
}
//THIS IS WRONG!
//Access the second object in the list, so as to access the value in number
objectdata o = objarray.get(1);
tv.setText(o.number.toString());
}
}
一番下は、インデックス 1 のオブジェクトにアクセスしようとしたため、作成された 2 番目のオブジェクトです。オブジェクトを使用してクラスから数値の値を取得し、それをテキスト ビューに保存して、動作を確認できるようにします。 . 基本的に、オブジェクトを使用してデータを保存し、これらのオブジェクトを配列リストに保存しようとしています。私はこの時点で完全に立ち往生しています。