eclipse 安装配置后 switch语句不能用字符串变量的报错

youyiyang 2016-09-30 10:33:45
你好!

我电脑重装了eclipse,原来的是mars.1现在是neon,原来程序里面switch后面的变量是字符串是不报错的,现在报错,请问该怎么解决?

另外,现在eclipse还报这个错,请问怎么解决?

...全文
630 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
youyiyang 2016-10-03
  • 打赏
  • 举报
回复
先装了jdk1.8也报这个错,switch(字符串)只要1.7以上都可以的
youyiyang 2016-10-02
  • 打赏
  • 举报
回复
引用 12 楼 Ecstatic 的回复:
jdk1.7 以上,能switch(String) 看看项目的java编译版本; 还有sdk弹出框那个是因为你用了高版本的platform,需要把adt连接工具升级
谢谢!那么我在升级的时候eclipse提示的是说要升级sdk,因为adt要比sdk的版本高级,那到底是升级adt还是sdk呢?
tcmakebest 2016-10-02
  • 打赏
  • 举报
回复
switch是因为JAVA版本低了.
网络咖啡 2016-10-02
  • 打赏
  • 举报
回复
JDK的版本选低了吧?
ecstatic 2016-10-02
  • 打赏
  • 举报
回复
sdk中有platform tools 还有adt,用sdk manager 把除了 api的工具都升升就好了,这样升级的还能快点,一个完整的sdk现在不得50g以上了
youyiyang 2016-09-30
  • 打赏
  • 举报
回复
请问这是什么道理呢?
youyiyang 2016-09-30
  • 打赏
  • 举报
回复
升级到sdk tool 24.0.2后,右键点击红线,选择默认的现象,使得兼容jre1.7就可以了
ecstatic 2016-09-30
  • 打赏
  • 举报
回复
jdk1.7 以上,能switch(String) 看看项目的java编译版本; 还有sdk弹出框那个是因为你用了高版本的platform,需要把adt连接工具升级
developerzjy 2016-09-30
  • 打赏
  • 举报
回复
引用 4 楼 Simple_Simple_Simple 的回复:
[quote=引用 3 楼 Simple_Simple_Simple 的回复:] [quote=引用 2 楼 youyiyang 的回复:] [quote=引用 1 楼 Simple_Simple_Simple 的回复:] type没有初始化? ADT和SDK版本不一致
type是字符串[/quote] 字符串也得初始化啊 eclipse不是有提示为什么报错吗 String type = null; 试试[/quote] 我试了一下 如果type是成员变量 private String type; 在方法里面switch(type)就没问题 但是如果type是在方法里面定义的局部变量 String type; switch(type)就报错 如果初始化了,String type = null; switch(type)就不报错 我java基础也不行,不知道为什么[/quote] 刚才查了一下,Java默认初始化的只有成员变量,局部变量必须自己初始化,看你代码的颜色type应该是局部变量吧,没初始化,我觉得跟它是不是字符串没关系
山鹰1985 2016-09-30
  • 打赏
  • 举报
回复
引用 楼主 youyiyang 的回复:
你好! 我电脑重装了eclipse,原来的是mars.1现在是neon,原来程序里面switch后面的变量是字符串是不报错的,现在报错,请问该怎么解决? 另外,现在eclipse还报这个错,请问怎么解决?
先把 ADT 更新下吧, 至于 type 报错, 你之前是可以用的吗? 个人现在用的 Android studio 倒是没问题,可以 swicth(string), ADT 升级后如果还不能解决,那就建议你直接换成 if else if 吧。
developerzjy 2016-09-30
  • 打赏
  • 举报
回复
引用 3 楼 Simple_Simple_Simple 的回复:
[quote=引用 2 楼 youyiyang 的回复:] [quote=引用 1 楼 Simple_Simple_Simple 的回复:] type没有初始化? ADT和SDK版本不一致
type是字符串[/quote] 字符串也得初始化啊 eclipse不是有提示为什么报错吗 String type = null; 试试[/quote] 我试了一下 如果type是成员变量 private String type; 在方法里面switch(type)就没问题 但是如果type是在方法里面定义的局部变量 String type; switch(type)就报错 如果初始化了,String type = null; switch(type)就不报错 我java基础也不行,不知道为什么
developerzjy 2016-09-30
  • 打赏
  • 举报
回复
引用 2 楼 youyiyang 的回复:
[quote=引用 1 楼 Simple_Simple_Simple 的回复:] type没有初始化? ADT和SDK版本不一致
type是字符串[/quote] 字符串也得初始化啊 eclipse不是有提示为什么报错吗 String type = null; 试试
youyiyang 2016-09-30
  • 打赏
  • 举报
回复
引用 1 楼 Simple_Simple_Simple 的回复:
type没有初始化? ADT和SDK版本不一致
type是字符串
developerzjy 2016-09-30
  • 打赏
  • 举报
回复
type没有初始化? ADT和SDK版本不一致
山鹰1985 2016-09-30
  • 打赏
  • 举报
回复
引用 10 楼 youyiyang 的回复:
[quote=引用 9 楼 u012137924 的回复:] [quote=引用 8 楼 youyiyang 的回复:] 请问这是什么道理呢?
默认的选项是 怎么说的? 自己没看? [/quote] 光操作,没看[/quote]
youyiyang 2016-09-30
  • 打赏
  • 举报
回复
引用 9 楼 u012137924 的回复:
[quote=引用 8 楼 youyiyang 的回复:] 请问这是什么道理呢?
默认的选项是 怎么说的? 自己没看? [/quote] 光操作,没看
山鹰1985 2016-09-30
  • 打赏
  • 举报
回复
引用 8 楼 youyiyang 的回复:
请问这是什么道理呢?
默认的选项是 怎么说的? 自己没看?

80,351

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧