투케이2K

80. (Flutter/플러터) [Mac] : [Dart] : 다트 - [Extension] String 문자열 확장 메소드 생성 및 출력 수행 본문

Flutter

80. (Flutter/플러터) [Mac] : [Dart] : 다트 - [Extension] String 문자열 확장 메소드 생성 및 출력 수행

투케이2K 2024. 5. 30. 20:31

[개발 환경 설정]

개발 툴 : AndroidStudio

개발 언어 : Dart

 

[소스 코드]

import 'package:flutter/material.dart';
import 'dart:developer';
import 'dart:core';


// -----------------------------------------------------------------------------------------
// TODO [Extension] : [기능 확장 정의]
// -----------------------------------------------------------------------------------------
extension StringExtension on String {

  String charAt(int idx) { // [custom function]
    return this[idx];
  }

}





// -----------------------------------------------------------------------------------------
// TODO [main] : [application 의 진입점 역할]
// -----------------------------------------------------------------------------------------
void main() {

  /**
   * ------------------------------------------------
   * [요약 설명]
   * ------------------------------------------------
   * 1. Extension : 기존 라이브러리 및 함수에 추가 확장 된 기능을 정의할 수 있습니다
   * ------------------------------------------------
   * 2. Extension 은 기존 기능에서 Custom 커스텀 동작이 추가로 필요 시 사용할 수 있습니다
   * ------------------------------------------------
   * 3. 참고 사이트 : https://dart.dev/language/extension-methods
   * ------------------------------------------------
   * */

  try {

    // [초기 변수 선언]
    var str_data = "hello twok !!";

    // [extension 메소드 호출]
    var idx_0 = str_data.charAt(0);
    var idx_3 = str_data.charAt(3);

    // [로그 출력]
    log("");
    log("-------------------------------------------------------");
    log("idx_0 :: ${idx_0}");
    log("-------------------------------------------------------");
    log("idx_3 :: ${idx_3}");
    log("-------------------------------------------------------");
    log("");

  }
  catch (e) {
    log("");
    log("-------------------------------------------------------");
    log("Catch :: ${e}");
    log("-------------------------------------------------------");
    log("");
  }

}
 

[결과 출력]


반응형
Comments