2016-03-30 19 views
-1

Sadece JAVA'da bir para birimi ($) ekleme hakkında bir sorum var, NumberFormat.getCurrencyInstance(); çıktılarımı "$" olarak almak için. Programım programı yalnızca kabul eder örneğin girdi biraz para (dize biçimi) etmektir ($ 100.00 $, 50.00 $, 20.00 ... vb) bu ​​yüzden bu kod kullanılır:JAVA bir dize çift ekleme

String payment = keyboard.next(); 
while (!(payment.equals("$100.00")) && (!payment.equals("$50.00")) && (!payment.equals("$20.00")) && (!payment.equals("$10.00")) && (!payment.equals("$5.00")) && (!payment.equals("$2.00")) && (!payment.equals("$1.00")) { 
System.out.print("Invalid coin or note. Try again. "); 
payment = keyboard.next(); } 

Ben girdileri nasıl alabilirim (örneğin .. toplam fiyattan onları çıkarmak için bir çift olarak 100.00, 50.00 ...) I() (100.00-12.00 istiyorum 12.00 Herhangi bir yardım Teşekkür

mutluluk duyacağız

toplam fiyatı)

+0

'Double.parseDouble'? – Mena

+0

@Mena $ işaretini kaldırdıktan sonra. – Hackerdarshi

+0

@Hackerdarshi demeden gider. – Mena

cevap

0

Girişiniz "$" işareti ise, şunları yapabilirsiniz: string'inizin ilk elemanını silin ve sonra bir double'a dönüştürün.

//method to convert String in Double 
public Double getDoubleFromString(String payment) 
{ 
    payment = payment.substring(1); 
    double paymentDouble = Double.parseDouble(payment); 
    return paymentDouble; 
} 

String payment = keyboard.next(); 
double paymentDouble = getDoubleFromString(payment); 

while (paymentDouble != 100.00 && paymentDouble != 50.00 && paymentDouble != 20.00 
      && paymentDouble != 10.00 && paymentDouble != 5.00 
      && paymentDouble != 2.00 && paymentDouble != 1.00) 
     { 
     System.out.print("Invalid coin or note. Try again."); 
     String payment = keyboard.next(); 
     paymentDouble = getDoubleFromString(payment); 
     } 
+0

spesifikasyon, girişin "$" işareti ile olması gerektiğini söylüyor. Yani 100.00 ve 50.00 ... kabul edilmeyecek, onlar ($ 100.00 ....) olmalıdır –

+0

Tamam, cevabımı düzenledim. – DistribuzioneGaussiana

+0

TEŞEKKÜRLERİM! –

1
public double convertPayment(String inputPayment) { 
    String payment = inputPayment.substring(1); 
    double paymentValue = Double.parseDouble(payment); 
    return paymentValue; 
}