📅  最后修改于: 2023-12-03 15:12:55.373000             🧑  作者: Mango
在Dart中,我们可以通过 int.parse()
方法将字符串转换为int类型的数据。
String str = '123';
int num = int.parse(str);
在上面的例子中,我们将字符串 '123' 转换为 int 类型数据。如果需要将一个非数字的字符串转换为int,则会抛出一个FormatException错误。例如:
String str = 'abc';
int num = int.parse(str); // 会抛出一个FormatException
int.parse()
方法还可以接受一个可选参数 radix
,表示字符串所采用的进制,范围为2-36。下面我们来看一个例子:
String str = '1010';
int num = int.parse(str, radix: 2);
print(num); // 输出 10
在上面的例子中,我们将二进制字符串 '1010' 转换为int类型数据。
当字符串无法转换成int类型时,int.parse()
方法会抛出一个FormatException。我们可以通过try-catch语句来处理这个异常,例如:
String str = 'abc';
try {
int num = int.parse(str);
print(num);
} catch (e) {
print(e);
}
输出:
FormatException: Invalid number (at character 1)
abc
^
字符串转换为int类型是一个常见的场景,尤其是在用户输入方面。比如说,我们在开发一个App时,要求用户输入年龄,我们可以将用户输入的字符串转换为int类型,以方便进行后续的逻辑处理。
在Dart中,可以使用 int.parse()
方法将字符串转换为int类型数据。如果需要将一个非数字的字符串转换为int,则会抛出一个FormatException错误。为了防止代码异常退出,我们需要对可能抛出异常的代码块进行try-catch处理。