2015-06-05 18 views
7

Öğrenmeyi öğrenen bir tasarımcıyım Swift ve ben yeni başlayan biriyim.Değişkenleri çoğaltmak ve hızlıca ikiye katlamak

Hiçbir deneyimim yok.

Xcode oyun alanındaki temel kodu kullanarak bir uç hesap makinesi oluşturmaya çalışıyorum.

Şimdiye dek sahip olduğum şeyler.

Binary operator '*' cannot be applied to operands of type 'Int' and 'Double'

Ben çiftler demek çarpma olamaz mı:

var billBeforeTax = 100 
var taxPercentage = 0.12 
var tax = billBeforeTax * taxPercentage 

hatası alıyorum?

Burada değişkenlerden ve iki katından oluşan temel kavramlardan hiçbirini kaçırmıyorum?

+1

alakasız bir kayda göre - nerede var, seni 'yerine var'' arasında let' kullanmak, tercih ediyor. – ABakerSmith

+0

Teşekkürler! Bunu aklımda tutacağım – bmoondesign

+0

Bu yinelenen bir dosyadır ... sadece bir kopyasını bulmama izin verin ... – nhgrif

cevap

18

Aynı veri türünden yalnızca iki tanesini birden yapabilirsiniz.

var billBeforeTax = 100 // Interpreted as an Integer 
var taxPercentage = 0.12 // Interpreted as a Double 
var tax = billBeforeTax * taxPercentage // Integer * Double = error 

böylece gibi billBeforeTax bildirirseniz ..

var billBeforeTax = 100.0 

Bir Çift olarak yorumlanır ve çarpma çalışacaktır. Ya da aşağıdakileri de yapabilirsiniz.

var billBeforeTax = 100 
var taxPercentage = 0.12 
var tax = Double(billBeforeTax) * taxPercentage // Convert billBeforeTax to a double before multiplying. 
+0

Swift, türler hakkında çok hassastır. Çoğu zaman, farklı türde iki değişken arasında işlem yapamazsınız. İyi cevap. – antonio081014

+0

Teşekkür ederiz @omoman! Bu gerçekten yardımcı olur. – bmoondesign

+0

Harika yanıt @omoman – Trapp

1

sadece aşağıdaki Çift için int değişkeni artığını vardır:

var billBeforeTax = 100 
    var taxPercentage = 0.12 
    var tax = Double(billBeforeTax) * taxPercentage 
+0

Cevabınız için teşekkür ederiz :) – bmoondesign