BigInt for swift V3.5 BigIntの関数 数学関数(16進数文字列に変換関数・Int型に変換関数)

 

1) 16進数文字列に変換関数

 

   toHexString() -> String

   

   let p : BigInt = 10

        let n : String = p.toHexString()

        print(n)// → A

 

  大きな数の16進数変換

 

    let p : BigInt = "6481488132662152622132064265134066871981360" 

        let n : String = p.toHexString()

        print(n)// → 4A6761B7E371C75AECE5FED7886883425530

 

2) Int型に変換

 

  toIntSafe() -> Int? 

       Int に収まる場合は Int に変換、それ以外は nil

 

  

  let n : BigInt = 68714952

  let a : Int = n.toIntSafe()!

  print(a)// → 68714952

 

  異なる型同士の演算はできません。

    let a : Int = 10

    let b : BigInt = 20

    let c = a + b// エラー

 

    BigIntはInt型の演算ですが、BigIntとInt型は異なる型であると見なされるので、演算を行うときはどちらかに統一しなければなりません。