문자열을 double로 변환하는 방법을 소개합니다.
1. double.parse()를 이용한 방법
double.parse(string)
은 String을 double로 변환합니다.
void main() {
String str = "12.3456789";
double n = double.parse(str);
print(n);
}
Output:
12.3456789
하지만, 만약 문자열이 숫자가 아닐 때(숫자가 아닌 문자가 포함) FormatException
이 발생합니다.
String str = "12.3456789a";
double n = double.parse(str);
print(n);
Output:
Unhandled exception:
FormatException: Invalid double
12.3456789a
2. FormatException 예외 처리 방법
double이 아닌 문자열을 double.parse()
로 변환하면, FormatException가 발생하며 프로그램이 종료됩니다.
이럴 때는 try - on
으로 예외를 처리할 수 있습니다.
아래 예제는 예외가 발생했을 때 변수를 -1
을 초기 값으로 설정합니다.
void main() {
String str = "12.3456789a";
double n;
try {
n = double.parse(str);
} on FormatException {
n = -1;
}
print(n);
}
Output:
-1
3. tryParse()로 String -> double 변환
tryParse()
는 parse()
와 동일하게 String을 파싱해서 double을 리턴합니다.
차이점은, tryParse()
는 Exception을 내부적으로 처리하여 예외가 발생했을 때 null을 리턴합니다.
아래 예제를 보면, 올바른 double 값을 갖고 있는 문자열의 경우 tryParse()
는 double 값을 리턴하며, 그렇지 않은 경우는 null을 리턴하고 있습니다.
void main() {
String str1 = "12.3456789";
var n1 = double.tryParse(str1);
print(n1); // 12.3456789
String str2 = "12.3456789aa";
var n2 = double.tryParse(str2);
print(null); // 12.3456789
}
Output:
12.3456789
null
Loading script...
Related Posts
- Flutter/Dart - Future.delayed() 사용 방법
- Flutter/Dart - Stream 사용 방법
- Flutter/Dart - 파일, 디렉토리 삭제
- Flutter/Dart - 텍스트 파일 쓰기
- Flutter/Dart - 반복문 (for, while, for-in, forEach)
- Flutter/Dart - Static 변수, 메소드 선언
- Flutter/Dart - 텍스트 파일 읽기
- Flutter/Dart - 다양한 Null 체크 방법
- Flutter/Dart - Double을 Int로 변환
- Flutter/Dart - Double을 String으로 변환
- Flutter/Dart - String을 Double로 변환
- Flutter/Dart - String을 List로 변환
- Flutter/Dart - String에서 특정 문자열 Index 찾기
- Flutter/Dart - String 길이(length)
- Flutter/Dart - 몇 초 지연시키기, sleep
- Flutter/Dart - 날짜 계산, 년/월/일 더하고 빼기
- Flutter/Dart - 날짜 문자열을 DateTime으로 변환
- Flutter/Dart - 현재 시간 가져오기, DateTime
- Flutter/Dart - Map에 key-value 추가
- Flutter/Dart - Map 순회 방법
- Flutter/Dart - Map 선언 및 초기화
- Flutter/Dart - Map에서 Entry(key-value) 제거
- Flutter/Dart - key, value로 Map 정렬
- Flutter/Dart - 리스트 복사 방법
- Flutter/Dart - 리스트 합치는 방법
- Flutter/Dart - 리스트 최대값, 최소값 찾기
- Flutter/Dart - 리스트 요소 추가, 특정 위치 추가
- Flutter/Dart - 리스트 요소 제거
- Flutter/Dart - 리스트 합계, 평균 계산
- Flutter/Dart - 리스트 요소 값 변경, 찾기
- Flutter/Dart - 리스트 중복 제거
- Flutter/Dart - 리스트 정렬 (오름차순, 내림차순)
- Flutter/Dart - 리스트 자르기, 분리하기
- Flutter/Dart - 변수 타입 체크
- Flutter/Dart - 리스트 필터링