android ListIterator,class 转换错误?请检查我的日志
android ListIterator, class casting bug? please check my log
我什么都不做,只是输入一些测试代码,
但它不起作用。
这是我的代码,
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(new MySurfaceView(this));
List<String> list = new ArrayList<>();
for(int i = 0; i<10; i++){
list.add(""+ ((int) Math.random()*100));
}
ListIterator ite = list.listIterator();
while (ite.hasNext()){
Log.d("MainActivity", "ite.next("+ite.nextIndex()+") #"+ite.next());
}
}
和日志,
10-09 15:12:26.913 .com.iteratortest002 D/MainActivity﹕ ite.next(0) #0
10-09 15:12:26.913 .com.iteratortest002 D/MainActivity﹕ ite.next(1) #0
10-09 15:12:26.913 .com.iteratortest002 D/MainActivity﹕ ite.next(2) #0
10-09 15:12:26.913 .com.iteratortest002 D/MainActivity﹕ ite.next(3) #0
10-09 15:12:26.923 .com.iteratortest002 D/MainActivity﹕ ite.next(4) #0
10-09 15:12:26.923 .com.iteratortest002 D/MainActivity﹕ ite.next(5) #0
10-09 15:12:26.923 .com.iteratortest002 D/MainActivity﹕ ite.next(6) #0
10-09 15:12:26.923 .com.iteratortest002 D/MainActivity﹕ ite.next(7) #0
10-09 15:12:26.923 .com.iteratortest002 D/MainActivity﹕ ite.next(8) #0
10-09 15:12:26.923 .com.iteratortest002 D/MainActivity﹕ ite.next(9) #0
所有数字都有'0'
发生什么事了?
您需要在 Math.random()*100
两边加上括号以覆盖优先级。
list.add(""+ ((int) (Math.random()*100)));
否则,(int)
只是将 0.0
返回的浮点数 0.0
(不包括)首先乘以 random()
到 0
17=] 再次给出 0
。
我什么都不做,只是输入一些测试代码, 但它不起作用。
这是我的代码,
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(new MySurfaceView(this));
List<String> list = new ArrayList<>();
for(int i = 0; i<10; i++){
list.add(""+ ((int) Math.random()*100));
}
ListIterator ite = list.listIterator();
while (ite.hasNext()){
Log.d("MainActivity", "ite.next("+ite.nextIndex()+") #"+ite.next());
}
}
和日志,
10-09 15:12:26.913 .com.iteratortest002 D/MainActivity﹕ ite.next(0) #0
10-09 15:12:26.913 .com.iteratortest002 D/MainActivity﹕ ite.next(1) #0
10-09 15:12:26.913 .com.iteratortest002 D/MainActivity﹕ ite.next(2) #0
10-09 15:12:26.913 .com.iteratortest002 D/MainActivity﹕ ite.next(3) #0
10-09 15:12:26.923 .com.iteratortest002 D/MainActivity﹕ ite.next(4) #0
10-09 15:12:26.923 .com.iteratortest002 D/MainActivity﹕ ite.next(5) #0
10-09 15:12:26.923 .com.iteratortest002 D/MainActivity﹕ ite.next(6) #0
10-09 15:12:26.923 .com.iteratortest002 D/MainActivity﹕ ite.next(7) #0
10-09 15:12:26.923 .com.iteratortest002 D/MainActivity﹕ ite.next(8) #0
10-09 15:12:26.923 .com.iteratortest002 D/MainActivity﹕ ite.next(9) #0
所有数字都有'0' 发生什么事了?
您需要在 Math.random()*100
两边加上括号以覆盖优先级。
list.add(""+ ((int) (Math.random()*100)));
否则,(int)
只是将 0.0
返回的浮点数 0.0
(不包括)首先乘以 random()
到 0
17=] 再次给出 0
。