Tôi đang cố gắng kiểm tra xem chuỗi (bộ lọc) có được chứa trong một chuỗi khác (formattedAmount) tức là lọc chuỗi con được định dạngAmount hay không.Bằng() và indexOf() không hoạt động như tôi mong đợi bằng cách sử dụng NumberFormat
Tôi không thể làm cho nó hoạt động vì vậy tôi chỉ thay đổi mã để sử dụng "bằng()" thay vì "indexOf()", hoàn toàn đơn giản là việc thử nghiệm. Phương thức equals dường như không hoạt động như tôi mong đợi.
Dưới đây là một kịch bản giả tôi đã viết lên mà sao chép những gì tôi đang cố gắng để làm:
import java.math.BigDecimal;
import java.text.NumberFormat;
import java.util.Locale;
public class utils
{
public utils()
{
}
public static void main(String[] args) throws Exception
{
String filter = "333 333,44";
Number amount = new BigDecimal(333333.44);
NumberFormat nf = NumberFormat.getNumberInstance(Locale.FRANCE);
nf.setMinimumFractionDigits(2);
String formattedAmount = nf.format(amount);
if (formattedAmount.equals(filter))
{
System.out.println("Working");
}
}
}
Bất cứ ý tưởng tại sao nó không được vào báo cáo kết quả Nếu?
Cảm ơn
Bạn đã thực sự cố gắng in biến được định dạngAmount và xem bạn có nhận được gì không? – Tudor
Tôi có Tudor, nó in 333 333,44 như tôi mong đợi. –
@Thomas Buckley: Như tôi nghi ngờ, nhân vật thứ tư thực sự không phải là không gian, mà là một thứ khác. – Tudor