Bird
Raised Fist0
C Sharp (C#)programming~5 mins

Constant patterns in C Sharp (C#)

Choose your learning style10 modes available
Introduction

Constant patterns let you check if a value matches a fixed value easily. It helps you compare values in a clear way.

When you want to run code only if a variable equals a specific number or word.
When you use a switch statement and want to check for exact matches.
When you want to simplify if-else checks for fixed values.
When you want your code to be easier to read by clearly showing what values you expect.
Syntax
C Sharp (C#)
case constant_value:
    // code to run
    break;

The constant_value can be a number, string, or any fixed value.

This is often used inside switch statements or is expressions.

Examples
This checks if number is 5 or 10 and prints a message.
C Sharp (C#)
int number = 5;
switch (number)
{
    case 5:
        Console.WriteLine("Number is five.");
        break;
    case 10:
        Console.WriteLine("Number is ten.");
        break;
}
This uses a constant pattern to check if obj equals the string "hello".
C Sharp (C#)
object obj = "hello";
if (obj is "hello")
{
    Console.WriteLine("Greeting detected.");
}
Sample Program

This program uses constant patterns in a switch and an if statement to check fixed values and print messages.

C Sharp (C#)
using System;

class Program
{
    static void Main()
    {
        int day = 3;
        switch (day)
        {
            case 1:
                Console.WriteLine("Monday");
                break;
            case 2:
                Console.WriteLine("Tuesday");
                break;
            case 3:
                Console.WriteLine("Wednesday");
                break;
            default:
                Console.WriteLine("Another day");
                break;
        }

        object greeting = "hello";
        if (greeting is "hello")
        {
            Console.WriteLine("We said hello!");
        }
    }
}
OutputSuccess
Important Notes

Constant patterns compare values exactly, so types must match or be compatible.

They make code easier to read compared to multiple if-else statements.

Summary

Constant patterns check if a value equals a fixed value.

They are often used in switch statements and is expressions.

They help write clear and simple code for exact value checks.

Practice

(1/5)
1. What does a constant pattern in C# do when used in a switch statement?
easy
A. It checks if the value is greater than a constant.
B. It checks if the value exactly matches a fixed constant.
C. It checks if the value is less than a constant.
D. It checks if the value is of a certain type.

Solution

  1. Step 1: Understand constant pattern purpose

    Constant patterns compare a value to a fixed constant to see if they are equal.
  2. Step 2: Apply to switch statement

    In a switch, constant patterns match cases where the value equals the constant exactly.
  3. Final Answer:

    It checks if the value exactly matches a fixed constant. -> Option B
  4. Quick Check:

    Constant pattern = exact value check [OK]
Hint: Constant pattern means exact value match check [OK]
Common Mistakes:
  • Thinking it checks ranges instead of exact values
  • Confusing with type patterns
  • Assuming it checks inequality
2. Which of the following is the correct syntax for a constant pattern in an if statement in C#?
easy
A. if (is x 10) { }
B. if (x == is 10) { }
C. if (x is 10) { }
D. if (x = 10) { }

Solution

  1. Step 1: Recall constant pattern syntax

    The syntax uses is followed by the constant value to check equality.
  2. Step 2: Check each option

    if (x is 10) { } uses if (x is 10), which is correct. Others have syntax errors.
  3. Final Answer:

    if (x is 10) { } -> Option C
  4. Quick Check:

    Correct constant pattern syntax = if (x is 10) [OK]
Hint: Use 'is' keyword followed by constant value [OK]
Common Mistakes:
  • Using assignment '=' instead of 'is'
  • Placing 'is' incorrectly
  • Adding extra operators
3. What will be the output of the following C# code?
int number = 5;
switch (number)
{
    case 3:
        Console.WriteLine("Three");
        break;
    case 5:
        Console.WriteLine("Five");
        break;
    default:
        Console.WriteLine("Other");
        break;
}
medium
A. Five
B. Three
C. Other
D. No output

Solution

  1. Step 1: Identify the value of 'number'

    The variable 'number' is assigned the value 5.
  2. Step 2: Match the switch cases

    The switch checks cases 3 and 5. Since number is 5, it matches case 5 and prints "Five".
  3. Final Answer:

    Five -> Option A
  4. Quick Check:

    number = 5 matches case 5 [OK]
Hint: Match value to case constant exactly [OK]
Common Mistakes:
  • Choosing default instead of matching case
  • Confusing case values
  • Ignoring break statements
4. Identify the error in this C# code using constant patterns:
object obj = 10;
if (obj is 10)
{
    Console.WriteLine("Ten");
}
medium
A. No error, code is correct
B. Missing cast to int before pattern matching
C. Cannot use constant pattern with object type
D. Constant pattern requires a variable after 'is'

Solution

  1. Step 1: Understand constant pattern with object

    Constant patterns can be used with object type to check if it equals a constant value.
  2. Step 2: Check code correctness

    The code uses obj is 10 correctly to check if obj equals 10. This is valid syntax and logic.
  3. Final Answer:

    No error, code is correct -> Option A
  4. Quick Check:

    Constant pattern works with object type [OK]
Hint: Constant pattern works directly on object values [OK]
Common Mistakes:
  • Assuming cast needed before pattern
  • Thinking constant pattern needs variable
  • Confusing with type patterns
5. Given a list of integers, which C# code correctly uses constant patterns to count how many times the number 7 appears?
var numbers = new List<int> {1, 7, 3, 7, 5};
int count = 0;
foreach (var n in numbers)
{
    // Fill in the blank
}
Console.WriteLine(count);
hard
A. if (n == 7) count = 7;
B. if (n is not 7) count++;
C. if (n is int) count++;
D. if (n is 7) count++;

Solution

  1. Step 1: Understand the goal

    We want to count how many times 7 appears in the list.
  2. Step 2: Use constant pattern to check for 7

    The correct constant pattern is if (n is 7) which checks if n equals 7, then increments count.
  3. Final Answer:

    if (n is 7) count++; -> Option D
  4. Quick Check:

    Constant pattern for 7 increments count [OK]
Hint: Use 'is' with constant to check exact value [OK]
Common Mistakes:
  • Assigning count instead of incrementing
  • Checking type instead of value
  • Counting non-7 values
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard