double 형식의 목록을 이중 형식으로 변환하려고합니다. 나는 목록에 넣고 Double.parseDouble(string)
방법을 사용하여이 작업을 수행했습니다.문자열에서 이중으로 변환하여 후행 0을 제거합니다.
이 값은 대부분의 숫자에서 사용할 수 있지만 두 번째 숫자 뒤에 0이 포함되어 있으면 원치 않는 결과가 나타납니다. parseDouble
메서드가이를 제거하고 있습니다. 나는 이것을 제거하기를 원하지 않는다.
String[] values = {"124.50", "45.801", "-15.210"};
List<Double> nums = new ArrayList<Double>();
for(String s: values)
nums.add(Double.parseDouble(s));
Collections.sort(nums);
for(Double d: nums){
System.out.print(d + " ");
}
이
출력 산출 :-15.21 45.801 124.5
을하지만 후행 0을합니다. 형식화 된 선을 사용할 때의 문제점은 값을 인쇄 할 때 원하는 부동 소수점 정확도를 지정해야한다는 것입니다. 그러나 숫자를 특정 점으로 정확하게 만들려는 특정 욕구가 없으며 단지 0을 그대로 두십시오. 그들은 거기에있다.
내가 잘못 접근하고 있습니까?
실제 이중 값에 대해 말할 때 "후행 제로"와 같은 것은 없습니다. –
Dang, @BrianRoach가 나를 이겼습니다. 문제에 대한 해결책이 있지만 @leigero가 아닙니다. 출력에 항상 10 진수가'n '이되도록하려면'DoubleFormat'을 사용하면됩니다 – javatarz
흥미 롭습니다. 나는 n 자리 숫자를 정해 놓고 싶지 않다. 변환하기 전에 문자열을 확인하고 0을 수동으로 추가해야 할 것 같습니까? 그것은 매우 중복 된 것처럼 보입니다. – leigero