Dartでdoubleをintに変換する方法は?


105

以下のエラーが発生します。

int calc_ranks(ranks)
{
  double multiplier = .5;
  return multiplier * ranks;
}

メソッドで定義されてdoubleいるようにint、戻り値の型はではありませんcalc_ranks。に丸め/キャストするにはどうすればよいintですか?

回答:




70

次のいずれかを使用できます。

double d = 20.5;

int i = d.toInt(); // i = 20
int i = d.round(); // i = 21
int i = d.ceil();  // i = 21
int i = d.floor(); // i = 20

だから、オーバーライド:と床やラウンドと切り上げの違いは何ですか
ヘクターアグエロ

0

ダーツラウンドダブルからint

round()メソッドを使用すると、doubleに最も近い整数を取得できます。

例えば:

int num1 = (2.3).round();
// 2

int num2 = (2.5).round();
// 3

int num3 = (-2.3).round();
// -2

int num4 = (-2.5).round();
// -3

Flutterでdoubleをintに変換するメソッドを試すこともできます

  double x = 2.5;
 
  int a = x.toInt();
  int b = x.truncate();
  int c = x.round();
  int d = x.ceil();
  int e = x.floor();
 
  print(a); // 2
  print(b); // 2
  print(c); // 3
  print(d); // 3
  print(e); // 2

まず、この質問はroundダートで何を意味するのかについてではありませんでした。第二に、残りのものは既存の回答からのみコピーされます。このようにスパムを送信しないでください。あなたは他の答えをコピーしているだけです。
IDECODE

@iDecode Q:「Dartでdoubleをintに変換する方法は?」この回答:「round()を使用すると、doubleに最も近い整数を取得できます」。どうして答えは質問とは関係ないと思いますか?
ルーベン

@Rubenこの回答はすでに他のユーザーから提供されています。同じものを何度も投稿してもメリットはありません。
IDECODE

これからは気をつけていくと言ったのに、なぜ反対票を投じてコメントを残すのか。これでも方法は同じですが、説明を変えてみてください。このようにして、数字の取り方の例を示しました
PareshMangukiya20年

これでは、整数がどのように倍精度に最も近いかを説明しようとしました。このintnum1 =(2.3).round(); // 2 int num2 =(2.5).round(); // 3 int num3 =(-2.3).round(); // -2 int num4 =(-2.5).round(); // -3
パレシュマングキヤ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.