在JDK 1.7中,switch语句中不支持的类型有以下几种:
1. 字符串类型(String):在JDK 1.7之前,switch语句只支持整型(byte、short、int)和字符型(char)的表达式。因此,如果试图在switch语句中使用字符串类型作为表达式,将会导致编译错误。这是由于字符串类型的对象并没有明确的顺序或代表性值,无法与case语句中的值进行比较。
2. 浮点类型(float、double):与字符串类型类似,浮点类型也不被支持作为switch语句的表达式类型。这是因为浮点类型的值具有无限的可能性,并且不容易直接进行比较。
3. 长整型(long):在JDK 1.7中,switch语句仅支持32位整数类型,即byte、short和int。如果尝试在switch表达式中使用long类型,将会导致编译错误。
4. 自定义类型(Class):除了基本数据类型之外,JDK 1.7中的switch语句不支持任何其他自定义类型。这是因为自定义类型的比较可能涉及到对象的内容比较,而不是简单的值比较。为了支持自定义类型,需要在switch语句中使用equals()方法来比较对象的内容。
需要注意的是,从JDK 1.8开始,Java引入了对字符串类型的switch支持,并且可以使用字符串作为switch表达式。此外,JDK 1.8还引入了对枚举类型和整型包装类型(Integer、Byte、Short、Character)的支持。在这些情况下,可以直接在switch语句中使用这些类型的值作为表达式。
版权申明:财旺号所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流,不声明或保证其内容的正确性,如发现本站有涉嫌抄袭侵权/违法违规的内容。请发送邮件至 1790309299@qq.com 举报,一经查实,本站将立刻删除。