2017-03-25 11 views
0

私はsuvat計算機を作ろうとしており、2つの異なるタイプの変数を1つの変数に格納する方法が必要です。2種類の変数型を持っています

suvatを知らない人は、スワット方程式は、5つの変数のそれぞれが3つの既知の変数のみから見出されることを可能にする方程式の集合である。

これは、変数に浮動小数点数とnull値を保持させる必要があることを意味します。これを行う方法はありますか?

+0

NULL可能タイプFTW – bradbury9

+2

可能な複製を[C#でnull非許容型の変数にNULL値を割り当てる方法?](http://stackoverflow.com/質問/ 15491889/null-value-to-non-nullable-type-variable-in-c) – BACON

答えて

3

変数がfloatまたはnullの両方を保持するには、null可能な型を使用する必要があります。たとえば、「float?」を使用できます。

float? myFloat = null; 

あなたがNULL可能double型を使用し、ダブルまたはnullを保持する必要がある場合::タイプとして

double? myDouble = null; 

など

+0

「[Nullable types]( https://msdn.microsoft.com/en-us/library/1t3y8s4s.aspx)」を参照してください。 –

+0

残念ながら、これは私が必要とするものです。しかし、私はこの型をdouble型に変換することはできません。私が試した各変換では、Math.sqrt(変数) – TheAndOnlyFin

+0

@TheAndOnlyFinは、myFloatがnullに等しくないことをテストした後で使用できません。Math.Sqrt((double)myFloat); – BoltBait

0

あなたは、単に種類が含まれているクラスを作成することができますあなたが必要です。たとえば、あなたがfloatと文字列が必要な場合は、(あなたはnullを言ったが、それはタイプではないので、私はnullにすることができた、stringを使用しています):

class SomeClassName 
{ 
    public float FloatValue {get; set;} 
    public string StringValue {get; set;} 
} 

は今、あなたはの変数を作成することができますSomeClassNameを入力し、フロートと文字列の両方を割り当て:の

SomeClassName suvat = new SomeClassName(); 
suvat.FloatValue = 1.2; 
suvat.StringValue = null; 
関連する問題