🧑💻double
полный список методов и свойств для типа данных double
в Dart, с описанием, примерами кода и пояснением, где можно использовать каждый метод.
Свойства и методы double
double
isFinite
Проверяет, является ли число конечным.
double value = 5.5; print(value.isFinite); // Вывод: true
Где использовать: Проверка чисел, чтобы избежать ошибок при работе с бесконечными значениями.
isInfinite
Проверяет, является ли число бесконечным.
double value = double.infinity; print(value.isInfinite); // Вывод: true
Где использовать: Используется для обработки или игнорирования бесконечных значений в расчётах.
isNaN
Проверяет, является ли число
NaN
(не числом).
double value = 0 / 0; print(value.isNaN); // Вывод: true
Где использовать: Проверка результата математических операций, которые могут возвращать
NaN
.isNegative
Проверяет, является ли число отрицательным.
double value = -5.5; print(value.isNegative); // Вывод: true
Где использовать: Проверка на отрицательные значения, например, для отображения в определённом формате.
abs()
Возвращает модуль числа.
double value = -5.5; print(value.abs()); // Вывод: 5.5
Где использовать: Для получения положительного значения при расчетах.
ceil()
Округляет число вверх до ближайшего целого.
double value = 4.1; print(value.ceil()); // Вывод: 5
Где использовать: Когда нужно округлить значение вверх, например, для расчёта минимального количества ресурсов.
floor()
Округляет число вниз до ближайшего целого.
double value = 4.9; print(value.floor()); // Вывод: 4
Где использовать: Для округления вниз, например, при расчёте сдачи.
round()
Округляет число до ближайшего целого.
double value = 4.6; print(value.round()); // Вывод: 5
Где использовать: При округлении значений, которые отображаются на экране.
truncate()
Отбрасывает дробную часть и оставляет только целую часть числа.
double value = 4.9; print(value.truncate()); // Вывод: 4
Где использовать: Используется, когда нужна только целая часть числа, без округления.
toInt()
Преобразует
double
вint
, отбрасывая дробную часть.
double value = 5.8; print(value.toInt()); // Вывод: 5
Где использовать: При необходимости целого числа для работы с индексами или счётчиками.
toString()
Преобразует число в строку.
double value = 5.5; print(value.toString()); // Вывод: "5.5"
Где использовать: Когда нужно сохранить число в строковом формате, например, для отображения.
toStringAsFixed(int fractionDigits)
Преобразует число в строку с фиксированным количеством знаков после запятой.
double value = 3.14159; print(value.toStringAsFixed(2)); // Вывод: "3.14"
Где использовать: Для отображения числа с заданной точностью, например, в валюте.
toStringAsExponential([int fractionDigits])
Преобразует число в строку в экспоненциальной нотации.
double value = 1234.56; print(value.toStringAsExponential(2)); // Вывод: "1.23e+3"
Где использовать: Для научных расчетов или работы с большими числами.
toStringAsPrecision(int precision)
Преобразует число в строку с заданной точностью (общее количество значимых цифр).
double value = 3.14159; print(value.toStringAsPrecision(3)); // Вывод: "3.14"
Где использовать: Когда требуется точность в отображении значений.
Пример применения методов и свойств double
в Flutter
double
в FlutterПример Flutter-приложения, где используются свойства и методы типа данных double
:
dartКопировать кодimport 'package:flutter/material.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Double Methods Demo',
theme: ThemeData(
primarySwatch: Colors.blue,
),
home: DoubleMethodsScreen(),
);
}
}
class DoubleMethodsScreen extends StatefulWidget {
@override
_DoubleMethodsScreenState createState() => _DoubleMethodsScreenState();
}
class _DoubleMethodsScreenState extends State<DoubleMethodsScreen> {
double _number = -3.14159;
String _result = '';
void _calculateMethods() {
setState(() {
_result = 'isFinite: ${_number.isFinite}\n'
'isInfinite: ${_number.isInfinite}\n'
'isNaN: ${_number.isNaN}\n'
'isNegative: ${_number.isNegative}\n'
'abs(): ${_number.abs()}\n'
'ceil(): ${_number.ceil()}\n'
'floor(): ${_number.floor()}\n'
'round(): ${_number.round()}\n'
'truncate(): ${_number.truncate()}\n'
'toInt(): ${_number.toInt()}\n'
'toString(): ${_number.toString()}\n'
'toStringAsFixed(2): ${_number.toStringAsFixed(2)}\n'
'toStringAsExponential(2): ${_number.toStringAsExponential(2)}\n'
'toStringAsPrecision(3): ${_number.toStringAsPrecision(3)}\n';
});
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('Double Methods Demo'),
),
body: Padding(
padding: const EdgeInsets.all(16.0),
child: Column(
crossAxisAlignment: CrossAxisAlignment.stretch,
children: [
Text(
'Number: $_number',
style: TextStyle(fontSize: 18, fontWeight: FontWeight.bold),
),
SizedBox(height: 16),
ElevatedButton(
onPressed: _calculateMethods,
child: Text('Calculate Methods'),
),
SizedBox(height: 16),
Text(
'Results:',
style: TextStyle(fontSize: 18, fontWeight: FontWeight.bold),
),
SizedBox(height: 8),
Expanded(
child: SingleChildScrollView(
child: Text(
_result,
style: TextStyle(fontSize: 16),
),
),
),
],
),
),
);
}
}
В этом примере Flutter-приложение отображает результаты выполнения методов и свойств типа double
.
Last updated