2016-12-08 2 views
-2

내 목록은 부동 소수점 유형이며 부동 소수점 형으로 모든 값을 구문 분석합니다. 내 목록에이 다섯 가지 값이 있습니다. 이 값들은 모두 float 형식이거나 t1, t2 등과 같은 값을 가진 값들도 있습니다.목록에서 안드로이드의 평균을 계산하십시오.

값이 float 형식인지 확인해야합니다. tean은이 float 형식을 사용하고 float 형식에 따라 평균을 계산합니다. 그 목록.

ArrayList<Float> list = new ArrayList<Float>();  

String btn1 = t1.getText().toString(); 
String btn2 = t2.getText().toString(); 
String btn3 = t3.getText().toString(); 
String btn4 = t4.getText().toString(); 
String btn5 = t5.getText().toString(); 

float num1 = Float.parseFloat(btn1); 
float num2 = Float.parseFloat(btn2); 
float num3 = Float.parseFloat(btn3); 
float num4 = Float.parseFloat(btn4); 
float num5 = Float.parseFloat(btn5);  

list.add(num1); 
list.add(num2); 
list.add(num3); 
list.add(num4); 
list.add(num5); 
+0

이 문제를 해결하지 못했습니다. 어쨌든 String에서 float을 파싱합니다. 그래서 모든 것이 떠있을 것입니다. – Vinodh

+0

코드 블록 앞에 문제 문을 옮겼습니다. 보통 상황에 맞는 코드를 소화하는 것이 더 쉽습니다. 또한 코드 블록의 서식을 정리했습니다. Stack Overflow에 코드를 붙여 넣는 가장 쉬운 방법은 붙여 넣기를 선택하고 Ctrl + K를 누르거나'{} '버튼을 클릭하는 것입니다. 이렇게하면 코드를 4 칸 더 들여 씁니다. SO는이를 코드로 취급합니다. – Chris

답변

0

당신은 기능을 사용할 수 있습니다 :

NumberUtils.isDecimal(str); 
    NumberUtils.isInteger(str); 

그래서 귀하의 경우, 당신은 다음, 목록에 모든 문자열을 추가 그것을 반복하고 숫자 요소의 어떤 확인해야합니다.

int count = 0; 
Float sum = 0f; 
for(String str : stringList){ 
    if(NumberUtils.isDecimal(str) || NumberUtils.isInteger(str)){ 
     count++; 
     sum+= Float.parseFloat(str); 
    } 
} 
Float average = sum/count; 
+0

numberutils 라이브러리를 다운로드해야합니까? 경로를 제공해 주시겠습니까? – bilawal

관련 문제