Come è possibile rendere disponibile insuranceCost
all'esterno dell'istruzione if
?Accesso a una variabile all'esterno di un'istruzione "if"
if (this.comboBox5.Text == "Third Party Fire and Theft")
{
double insuranceCost = 1;
}
Come è possibile rendere disponibile insuranceCost
all'esterno dell'istruzione if
?Accesso a una variabile all'esterno di un'istruzione "if"
if (this.comboBox5.Text == "Third Party Fire and Theft")
{
double insuranceCost = 1;
}
Definirlo al di fuori dell'istruzione if.
double insuranceCost;
if (this.comboBox5.Text == "Third Party Fire and Theft")
{
insuranceCost = 1;
}
Se lo si restituisce dal metodo, allora è possibile assegnare un valore predefinito o 0, altrimenti si rischia di ottenere un errore, "Utilizzo di variabili non assegnata";
double insuranceCost = 0;
o
double insuranceCost = default(double); // which is 0.0
Immagino che '0' sia molto più chiaro di' default (double) '. Quest'ultimo viene solitamente utilizzato con tipi generici in cui non è possibile conoscere il valore predefinito al momento della scrittura del codice. – Joey
@Joey, sono d'accordo, ho usato l'impostazione predefinita per dare un'idea – Habib
double insuranceCost = 0;
if (this.comboBox5.Text == "Third Party Fire and Theft")
{
insuranceCost = 1;
}
dichiararlo prima istruzione if, dando un valore predefinito. Imposta il valore all'interno di if. se non si assegna un valore predefinito al doppio, si otterrà un errore in fase di compilazione. Per esempio
double GetInsuranceCost()
{
double insuranceCost = 0;
if (this.comboBox5.Text == "Third Party Fire and Theft")
{
insuranceCost = 1;
}
// Without the initialization before the IF this code will not compile
return insuranceCost;
}
In aggiunta alle altre risposte, si può solo inline il if
in questo caso (tra parentesi aggiunto solo per chiarezza):
double insuranceCost = (this.comboBox5.Text == "Third Party Fire and Theft") ? 1 : 0;
Sostituire 0
con qualsiasi valore che si desidera inizializzare insuranceCost
a, se la condizione non corrisponde.
Quale valore dovrebbe avere insuranceCost se il testo di 'comboBox5' è diverso? – Heinzi