Necesito comparar dos valores. Un valor es price
que representa el precio actual de algo así que decimal
porque en realidad puede comprar o vender algo por este precio.para comparar el doble y el decimal ¿Debería convertir doble a decimal o decimal a doble?
Otro valor es estimatedPrice
que es el resultado de cálculos matemáticos y así double
porque es sólo estimation
y no se puede hacer realidad cualquier "operaciones" por esta esitmatedPrice
ahora quiero comprar si price < estimatedPrice
.
Entonces, ¿debo aplicar el precio al doble o al precio estimado a decimal?
Entiendo que después del casting obtendré números "levemente otros", pero parece que no tengo otras opciones.
@BlueChippy no puede usar flotador para los datos de precios si los artículos son caros. Por ejemplo, float no puede representar '123456.78'. – phoog
Decimal ocupa más memoria y tiene números más significativos con un rango más pequeño y, por lo tanto, puede ser "más preciso" (dependiendo de su punto de vista de "precisión") en comparación con los puntos flotantes (flotante/doble). Podría muy felizmente usar el doble para ambos valores, o decimal, o flotar si lo desea, especialmente si el Precio siempre va a tener dos decimales. No se puede convertir explícitamente de punto flotante a decimal (ya que son cosas completamente diferentes), por lo que podría ser mejor en este caso elegir uno para todos los tipos. ¡Dejará que otros le recomienden cuál! (Yo iría decimal, personalmente) – BlueChippy
@phoog Verdadero, depende del escenario. Mi pref personal es decimal (preferido) o doble ... pero si es posible use ese tipo en general. – BlueChippy