当前位置:   article > 正文

新版AndroidStudio使用switch-case语句时出现Constant expression required错误_android studio constant expression required

android studio constant expression required

原因:

        在新版的Android Studio中使用JDK17以上版本,会出现switch语句报错"Constant expression required"的问题,这是因为在JDK17中switch语句的条件表达式支持使用枚举类型,而这个特性还没有被支持。

解决方法:

①在gradle.properties配置文件下添加代码(推荐,最简便)

android.nonFinalResIds=false

②替换为if-else语法

c4e7af1e7e144b0ea3ba265d3e0162c7.png

③降低jdk版本(不推荐,新版AS强制要求jdk版本)

④使用枚举替换(写法比较麻烦,仅供参考)

创建一个枚举类

bc23787bf20145159373bd4cc7331e06.png

在Activity中声明成员变量

eec9bb8016654679a0eb22b5d5264bf2.png

然后,将枚举类型与按钮关联起来。你可以使用Map来将按钮的资源ID与枚举类型进行映射。在Activity的onCreate方法中,或者Fragment的onCreateView方法中,进行如下操作:

16f05e45c6dd46cc8bfe9d0141d2b86f.png

最后,在你的Activity或Fragment中实现onButtonClick方法,根据枚举类型来执行相应的逻辑:

7d36313f57f6484cb999db73fa3eec8a.png

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号