🧑💻int
все методы и свойства для типа данных int
в Dart, с описанием, примерами кода и объяснением, где их можно использовать.
Свойства и методы int
int
isEven
Проверяет, является ли число чётным.
int number = 10; print(number.isEven); // Вывод: true
Где использовать: Проверка чисел в циклах, например, для выделения чётных элементов.
isOdd
Проверяет, является ли число нечётным.
int number = 7; print(number.isOdd); // Вывод: true
Где использовать: Определение нечётных чисел, например, для проверки на условие выполнения задачи.
isNegative
Проверяет, является ли число отрицательным.
int number = -5; print(number.isNegative); // Вывод: true
Где использовать: Проверка знака числа, например, при подсчёте остатков или долгов.
bitLength
Возвращает количество бит, необходимых для представления числа в бинарной форме.
int number = 32; print(number.bitLength); // Вывод: 6 (поскольку 32 в бинарном виде – 100000)
Где использовать: Оптимизация работы с битовыми операциями, например, при обработке больших чисел.
sign
Возвращает знак числа:
-1
для отрицательных,0
для нуля,1
для положительных.
int number = -3; print(number.sign); // Вывод: -1
Где использовать: Быстрая проверка знака для математических вычислений.
abs()
Возвращает модуль числа.
int number = -10; print(number.abs()); // Вывод: 10
Где использовать: Преобразование числа в положительное значение, например, при подсчёте расстояния.
round()
Округляет число до ближайшего целого.
double value = 4.6; print(value.round()); // Вывод: 5
Где использовать: Округление до целого при вычислениях.
floor()
Округляет число вниз до ближайшего целого.
double value = 4.9; print(value.floor()); // Вывод: 4
Где использовать: Получение целого значения без превышения при расчётах.
ceil()
Округляет число вверх до ближайшего целого.
double value = 4.1; print(value.ceil()); // Вывод: 5
Где использовать: Получение целого значения с превышением при расчётах.
toDouble()
Преобразует
int
вdouble
.
int number = 5; print(number.toDouble()); // Вывод: 5.0
Где использовать: Преобразование целого числа для работы с дробными числами.
toString()
Преобразует число в строку.
int number = 123; print(number.toString()); // Вывод: "123"
Где использовать: Когда нужно сохранить число в строковом формате для отображения или сохранения.
toStringAsFixed(int fractionDigits)
Преобразует число в строку с заданным числом знаков после запятой.
double number = 3.14159; print(number.toStringAsFixed(2)); // Вывод: "3.14"
Где использовать: Форматирование числа для отображения в интерфейсе с фиксированной точностью.
toRadixString(int radix)
Возвращает строковое представление числа в системе счисления с основанием от 2 до 36.
int number = 10; print(number.toRadixString(2)); // Вывод: "1010" (в двоичной системе)
Где использовать: Конвертация чисел в другую систему счисления, например, для сетевых приложений или анализа данных.
gcd(int other)
Возвращает наибольший общий делитель для двух чисел.
int a = 36; int b = 60; print(a.gcd(b)); // Вывод: 12
Где использовать: Вычисление делителей, например, для упрощения дробей.
remainder(int other)
Возвращает остаток от деления.
int a = 10; int b = 3; print(a.remainder(b)); // Вывод: 1
Где использовать: Вычисление остатка, когда важно учитывать знак делимого.
clamp(int lowerLimit, int upperLimit)
Ограничивает число между заданными значениями.
int value = 150; print(value.clamp(0, 100)); // Вывод: 100
Где использовать: Ограничение значения, например, при настройке диапазонов яркости, громкости и т.д.
Пример применения всех методов в Flutter
Вот пример Flutter-приложения, в котором используется int
и демонстрируются методы на кнопках:
import 'package:flutter/material.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Integer Methods Demo',
theme: ThemeData(
primarySwatch: Colors.blue,
),
home: IntMethodsScreen(),
);
}
}
class IntMethodsScreen extends StatefulWidget {
@override
_IntMethodsScreenState createState() => _IntMethodsScreenState();
}
class _IntMethodsScreenState extends State<IntMethodsScreen> {
int _number = -42;
String _result = '';
void _calculateMethods() {
setState(() {
_result = 'isEven: ${_number.isEven}\n'
'isOdd: ${_number.isOdd}\n'
'isNegative: ${_number.isNegative}\n'
'bitLength: ${_number.bitLength}\n'
'sign: ${_number.sign}\n'
'abs(): ${_number.abs()}\n'
'toDouble(): ${_number.toDouble()}\n'
'toString(): ${_number.toString()}\n'
'toRadixString(2): ${_number.toRadixString(2)}\n';
});
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('Integer 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),
),
),
),
],
),
),
);
}
}
В этом примере при нажатии на кнопку "Calculate Methods"
в текстовом виджете Text
отобразятся результаты применения различных методов и свойств типа int
.
Last updated