Fsharp-data-types

提供:Dev Guides
移動先:案内検索

F#-データ型

F#のデータ型は次のように分類できます-

  • 積分型
  • 浮動小数点型
  • テキストタイプ
  • その他の種類

積分データ型

次の表に、F#の整数データ型を示します。 これらは基本的に整数データ型です。

F# Type Size Range Example Remarks
sbyte 1 byte -128 to 127

42y

-11y

8-bit signed integer
byte 1 byte 0 to 255

42uy

200uy

8-bit unsigned integer
int16 2 bytes -32768 to 32767

42s

-11s

16-bit signed integer
uint16 2 bytes 0 to 65,535

42us

200us

16-bit unsigned integer
int/int32 4 bytes -2,147,483,648 to 2,147,483,647

42

-11

32-bit signed integer
uint32 4 bytes 0 to 4,294,967,295

42u

200u

32-bit unsigned integer
int64 8 bytes -9,223,372,036,854,775,808 to 9,223,372,036,854,775,807

42L

-11L

64-bit signed integer
uint64 8 bytes 0 to 18,446,744,073,709,551,615

42UL

200UL

64-bit unsigned integer
bigint At least 4 bytes any integer

42I

1499999

9999999

9999999

9999999

9999I

arbitrary precision integer

( *single byte integer* )
let x = 268.97f
let y = 312.58f
let z = x + y

printfn "x: %f" x
printfn "y: %f" y
printfn "z: %f" z

( *unsigned 8-bit natural number* )

let p = 2uy
let q = 4uy
let r = p + q

printfn "p: %i" p
printfn "q: %i" q
printfn "r: %i" r

( *signed 16-bit integer* )

let a = 12s
let b = 24s
let c = a + b

printfn "a: %i" a
printfn "b: %i" b
printfn "c: %i" c

( *signed 32-bit integer* )

let d = 212l
let e = 504l
let f = d + e

printfn "d: %i" d
printfn "e: %i" e
printfn "f: %i" f

あなたがプログラムをコンパイルして実行すると、次の出力が得られます-

x: 1
y: 2
z: 3
p: 2
q: 4
r: 6
a: 12
b: 24
c: 36
d: 212
e: 504
f: 716

浮動小数点データ型

次の表に、F#の浮動小数点データ型を示します。

F# Type Size Range Example Remarks
float32 4 bytes ±1.5e-45 to ±3.4e38

42.0F

-11.0F

32-bit signed floating point number (7 significant digits)
float 8 bytes ±5.0e-324 to ±1.7e308

42.0

-11.0

64-bit signed floating point number (15-16 significant digits)
decimal 16 bytes ±1.0e-28 to ±7.9e28

42.0M

-11.0M

128-bit signed floating point number (28-29 significant digits)
BigRational At least 4 bytes Any rational number.

42N

-11N

Arbitrary precision rational number. Using this type requires a reference to FSharp.PowerPack.dll.

( *32-bit signed floating point number* )
( *7 significant digits* )

let d = 212.098f
let e = 504.768f
let f = d + e

printfn "d: %f" d
printfn "e: %f" e
printfn "f: %f" f

( *64-bit signed floating point number* )
( *15-16 significant digits* )
let x = 21290.098
let y = 50446.768
let z = x + y

printfn "x: %g" x
printfn "y: %g" y
printfn "z: %g" z

あなたがプログラムをコンパイルして実行すると、次の出力が得られます-

d: 212.098000
e: 504.768000
f: 716.866000
x: 21290.1
y: 50446.8
z: 71736.9

テキストデータ型

次の表に、F#のテキストデータ型を示します。

F# Type Size Range Example Remarks
char 2 bytes U+0000 to U+ffff

'x'

'\t'

Single unicode characters
string 20 + (2 * string’s length) bytes 0 to about 2 billion characters

"Hello"

"世界"

Unicode text

let choice = 'y'
let name = "Zara Ali"
let org = "Tutorials Point"

printfn "Choice: %c" choice
printfn "Name: %s" name
printfn "Organisation: %s" org

あなたがプログラムをコンパイルして実行すると、次の出力が得られます-

Choice: y
Name: Zara Ali
Organisation: Tutorials Point

その他のデータ型

次の表に、F#のその他のデータ型を示します。

F# Type Size Range Example Remarks
bool 1 byte Only two possible values, true or false

true

Stores boolean values

let trueVal = true
let falseVal = false

printfn "True Value: %b" (trueVal)
printfn "False Value: %b" (falseVal)

あなたがプログラムをコンパイルして実行すると、次の出力が得られます-

True Value: true
False Value: false