实测switch支持的参数类型

时间:2021-06-02 16:29:00
@Test
	public void testSwitch() {
		switch (2) {
		case 1:
			System.out.println("int型:" + 1);
			break;
		case 2:
			System.out.println("int型:" + 2);
			break;
		default:
			System.out.println("其他int值");
		}

		switch ('b') {
		case 'a':
			System.out.println("char型:" + 'a');
			break;
		case 'b':
			System.out.println("char型:" + 'b');
			break;
		default:
			System.out.println("其他char值");
		}

		switch ("b") {
		case "A":
			System.out.println("String型:" + "A");
			break;
		case "B":
			System.out.println("String型:" + "B");
			break;
		default:
			System.out.println("其他字符串");
		}
	}

以上代码打印出来的结果是:

int型:2

char型:b

其他字符串

switch可支持int型、char型、String型,其实除了这几种类型,还支持枚举类型,也就是说总共就支持这4种类型。

Only convertible int values, strings or enum variables are permitted.

其实,String型是JDK1.7及之后才支持的,1.6及1.6之前都不支持String型。