"스위치 문"의 두 판 사이의 차이

139번째 줄: 139번째 줄:
break
break
print 'default case'
print 'default case'
</source>
==Perl==
[[category: Perl]]
<source lang='Perl'>
use Switch;
switch ($i) {
case /\S/ { print "character found"; next } # fall-through
case 'hello' { print "hello" }
case 'world' { print "world" }
else { print "default case" }
}
</source>
</source>



2018년 1월 18일 (목) 14:06 판

switch statement; switch
switch 문
case
case ... when

1 Bash

STR=hello

case "$STR" in
hello)
	echo "Case hello"
	;;
world)
	echo "Case world"
	;;
*)
	echo "default case"
	;;
esac

# Case hello

2 C#

int caseSwitch = 1;
switch (caseSwitch)
{
    case 1: 
        Console.WriteLine("Case 1");
        break;
    case 2:
        Console.WriteLine("Case 2");
        break;
    default:
        Console.WriteLine("Default case");
        break;
}

3 Java

switch (age) {
  case 1: System.out.printf("You're one."); break;
  case 2: System.out.printf("You're two."); break;
  case 3: System.out.printf("You're three."); break;
  case 4: System.out.printf("You're four."); break;
  default: System.out.printf("You're neither!"); break;
}

4 JavaScript

switch(obj){
  case 'hello':
    console.log("hello");
    break;
  case 'world':
    console.log("world");
    break;
  default:
    console.log("default case");
}

5 PHP

switch($i) {
  case 'hello':
    echo "hello";
    break;
  case 'world':
    echo "world";
    break;
  default:
    echo "default case";
}
  • alternative syntax
switch($i):
  case 'hello':
    echo "hello";
    break;
  case 'world':
    echo "world";
    break;
  default:
    echo "default case";
}
endswitch;

6 Python

str = "world"
if str == "hello":
    print "case hello"
elif str == "world":
    print "case world"
else:
    print "default case"
# case world
# http://code.activestate.com/recipes/410692/
class switch(object):
	def __init__(self, value):
		self.value = value
		self.fall = False
	def __iter__(self):
		yield self.match
		raise StopIteration
	def match(self, *args):
		if self.fall or not args:
			return True
		elif self.value in args:
			self.fall = True
			return True
		else:
			return False

str = 'world'
for case in switch(str):
	if case('hello'):
		print 'case hello'
		break
	if case('world'):
		print 'case world'
		break
	print 'default case'

7 Perl

use Switch;
switch ($i) {
	case /\S/	{ print "character found"; next } # fall-through
	case 'hello'	{ print "hello" }
	case 'world'	{ print "world" }
	else		{ print "default case" }
}

8 Ruby

str = "world"
case str
when "hello"
    puts "hello"
when "world"
    puts "world"
else
    puts "default"
end
# world
str = "world"
case str
    when "hello" then puts "hello"
    when "world" then puts "world"
    else puts "default"
end
# world

9 같이 보기

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}