# SWITCH .. CASE .. SWEND Verbs - BBj

For this topic's original documentation, see SWITCH .. CASE .. SWEND Verbs.

## BBj-Specific Information

The original implementation of SWITCH..CASE..SWEND in PRO/5, and before BBj 17.00, is limited to integer expressions. In BBj 17.00 and higher, the SWITCH and CASE verbs accept any value, including strings, objects, and non-integer numbers.

## Example

 ``````input (0,err=*same)"Integer (1..5): ",x:(9) a = 1 switch x case a; print "one"; break case 2; print "two"; break case 3; print "three"; break case 4; print "four"; break case 5; print "five"; break case default; print "other"; break swend input "Letter (a..e): ",x\$ c\$ = "c" switch x\$ case "a"; print "a"; break case "b"; print "b"; break case c\$; print "c"; break case "d"; print "d"; break case "e"; print "e"; break case default; print "other"; break swend input "Choose i=integer,n=number,s=string,o=object,other=null() ",x\$ x\$ = cvs(x\$,8) x! = null() if pos("i"=x\$)=1 then x! = 42 if pos("n"=x\$)=1 then x! = Math.PI if pos("s"=x\$)=1 then x! = "xyzzy" if pos("o"=x\$)=1 then x! = bbjapi() print "switch ",x! switch x! case bbjapi(); print "found the object bbjapi()"; break case "xyzzy"; print "found the string xyzzy"; break case 42; print "found the integer 42"; break case null(); print "found the object null()"; break case default; print "found ",x! swend ``````