android 变量定义与赋值

sephirothzjf 2013-04-29 05:22:53
各位大虾,我是新手,请教下大家以下:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_escalculator);
daan = (TextView)findViewById(R.id.answer);
final String tmpanswer = "";
Button btn1 = (Button)findViewById(R.id.bt1);
btn1.setOnClickListener(new Button.OnClickListener(){
public void onClick(View v) {
String strtmp1 = "a";
tmpanswer=tmpanswer + strtmp1;
daan.setText(tmpanswer);
}
});
}

错提示:The final local variable tmpanswer cannot be assigned, since it is defined in an enclosing type

请问各位,我应该如何定义与赋值?
...全文
787 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
sephirothzjf 2013-05-02
  • 打赏
  • 举报
回复
谢谢回答,解决了!
  • 打赏
  • 举报
回复
引用 10 楼 sephirothzjf 的回复:
不在oncreat里写应该写在哪里?
就是全局变量啊,写在oncrea上边去。
sephirothzjf 2013-05-01
  • 打赏
  • 举报
回复
不在oncreat里写应该写在哪里?
sephirothzjf 2013-04-30
  • 打赏
  • 举报
回复
请问不用final的话怎么解决?
lisenfox 2013-04-30
  • 打赏
  • 举报
回复
final String tmpanswer = ""; 你把final去掉试试。
网络咖啡 2013-04-30
  • 打赏
  • 举报
回复
那就不要做成final的
sephirothzjf 2013-04-30
  • 打赏
  • 举报
回复
回复楼上,我是做循环,要不断的累加
顾小林 2013-04-30
  • 打赏
  • 举报
回复
tmpanswer=tmpanswer + strtmp1; 我就不明白了 你这个 tmpanswer 明明是空 为啥还需要加上?
  • 打赏
  • 举报
回复
final String tmpanswer = ""; 你写成全局变量,不要写在oncreat方法里边,写成全局的将final去掉。
sephirothzjf 2013-04-29
  • 打赏
  • 举报
回复
我试了都不行,我的final和赋值都是系统提示的,如果去了, tmpanswer=tmpanswer + strtmp1;这句里的两个tmpanswer都会出错.
  • 打赏
  • 举报
回复
final String tmpanswer = ""; 去掉final,或者final String tmpanswer; 不要赋值
顾小林 2013-04-29
  • 打赏
  • 举报
回复
final String tmpanswer = ""; 你这个已经给一个final 变量赋值了啊 下面再改就不OK了 你可以改成 final String tmpanswer;

80,362

社区成员

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

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