Проблема в том, что вы звоните iter.next()
дважды для одних и тех же данных.
Сделайте это следующим образом:
iter= productDataList.iterator();
public void CalcPrice(View v){
while(iter.hasNext()){
Product productData = iter.next()
if(productData.name.equals(pName)){
price=Integer.parseInt(productData.price);
break;
}
}
edPrice.setText("Tutar : "+price);
}