java基础面试题:switch语句能否作用在byte上,能否作用在long上,能否作用在String上?
package com.swift; public class Switch_Test { public static void main(String[] args) { /* * switch语句能否作用在byte上,能否作用在long上,能否作用在String上? */ byte zijie = 3; System.out.println(zijie); long changzheng=3; switch (changzheng) { //cannot switch on a value of type long. case 'a': System.out.println("this is a ."); break; case 0: System.out.println("this is 0 int"); break; case 3: System.out.println("this is 0 int"); break; default: System.out.println("this is default."); } } }
byte short char都是隐性int类型都可以,以及他们的包装类
long 不行
String也可以,要求case中也为String类型
package com.swift; public class Switch_Test { public static void main(String[] args) { /* * switch语句能否作用在byte上,能否作用在long上,能否作用在String上? */ byte zijie = 3; System.out.println(zijie); long changzheng=3; String str="abc"; switch (str) { //cannot switch on a value of type long. case "ab": System.out.println("this is a ."); break; case "a": System.out.println("this is 0 int"); break; case "abc": System.out.println("this is abc int"); break; default: System.out.println("this is default."); } } }
Never waste time any more, Never old man be a yong man