일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- Data Structure
- Unity
- Flutter
- C++
- dart 언어
- c# 추상 클래스
- github
- jupyter lab
- 도커
- HTML
- 다트 언어
- Houdini
- docker
- jupyter
- git
- 유니티
- c언어
- gitlab
- c# winform
- 깃
- Algorithm
- 포인터
- C# delegate
- Python
- vim
- 플러터
- 구조체
- c#
- C언어 포인터
- c# 윈폼
Archives
- Today
- Total
nomad-programmer
[Programming/C#] 로컬 함수 본문
로컬 함수 (Local Function)는 메소드 안에서 선언되고, 선언된 메소드 안에서만 사용되는 특별한 함수이다.
클래스의 멤버가 아니기 때문에 메소드가 아니라 함수 (Function)라고 부른다. 선언 방법은 메소드와 다르지 않지만, 로컬 함수는 자신이 존재하는 지역에 선언되어 있는 변수를 사용할 수 있다.
로컬 함수는 메소드 밖에서는 다시 쓸 일 없는 반복적인 작업을 하나의 이름 아래 묶어 놓는 데 제격이다. 람다식과 더불어 프로그래머에게 코드를 간추릴 수 있는 또 하나의 옵션을 제공하는 것이다.
using System;
namespace CSharpExample
{
class MainApp
{
static string ToLowerString(string input)
{
// arr -> char[]
var arr = input.ToCharArray();
for(int i=0; i<arr.Length; i++)
{
arr[i] = ToLowerChar(i);
}
// 로컬 함수 : 65~90 아스키 값은 +32하여 반환
char ToLowerChar(int i)
{
if (arr[i] < 65 || arr[i] > 90)
{
return arr[i];
}
return (char)(arr[i] + 32);
}
return new string(arr);
}
static int Main(string[] args)
{
Console.WriteLine(ToLowerString("Hello!"));
Console.WriteLine(ToLowerString("Good Morning."));
Console.WriteLine(ToLowerString("Method()"));
return 0;
}
}
}
/* 결과
hello!
good morning.
method()
*/
'Programming > C#' 카테고리의 다른 글
[Programming/C#] 생성자와 소멸자 (0) | 2020.09.08 |
---|---|
[Programming/C#] new 연산자 (0) | 2020.09.07 |
[Programming/C#] 선택적 매개 변수 (0) | 2020.09.07 |
[Programming/C#] 네임드 매개 변수 (0) | 2020.09.07 |
[Programming/C#] 가변 길이 매개 변수 (0) | 2020.09.07 |
Comments