as 연산자는 C#에서 형변환을 수행하는데 사용됩니다. 이 연산자는 특히 참조형식(Reference Types) 간의 형변환에서 유용하게 사용됩니다. as 연산자는 변환할 수 없는 경우 null을 반환하므로 예외가 발생하지 않습니다.
아래는 as 연산자의 간단한 사용 예제입니다:
class Animal
{
public string Name { get; set; }
}
class Dog : Animal
{
public void Bark()
{
Console.WriteLine("Woof!");
}
}
class Program
{
static void Main()
{
// Dog 객체를 생성
Dog myDog = new Dog();
myDog.Name = "Buddy";
// Animal 형식으로 형변환 시도
Animal myAnimal = myDog as Animal;
// 형변환 성공 여부 확인
if (myAnimal != null)
{
Console.WriteLine($"{myAnimal.Name} is an Animal.");
// myAnimal은 Animal 형식으로 사용 가능
}
else
{
Console.WriteLine("Conversion failed. myAnimal is null.");
}
}
}
위의 예제에서 myDog 객체는 Animal 클래스의 하위 클래스인 Dog 클래스의 인스턴스입니다. as 연산자를 사용하여 myDog 객체를 Animal 형식으로 형변환하고, 형변환에 성공하면 myAnimal 변수에 할당됩니다. 만약 형변환이 실패하면 myAnimal은 null이 됩니다.
as 연산자는 참조형식에서만 사용할 수 있으며, 값 형식(구조체)에서는 사용할 수 없습니다. 값 형식의 경우 is 연산자를 사용하여 형변환이 가능한지 확인할 수 있습니다.
'C#' 카테고리의 다른 글
| DependencyProperty Binding 주의사항 (0) | 2024.04.16 |
|---|---|
| String to Enum (0) | 2024.04.02 |
| Parallel.ForEach (0) | 2024.01.22 |
| C# 리스트 내의 모든 값이 참이면 조건 실행 (0) | 2023.11.03 |
| enum 길이 (0) | 2023.11.01 |