我的这个程序是先生成一个随机数,然后根据这个随机数来输出不同的文字。
但是生成了随机数value之后,却不能输出对应的文字。。主要源代码如下: value = String.valueOf((int) (Math.random() * 10+1));//生成随机数
resultView.setText(value);//输出随机数
go.setOnClickListener(new go());//调用下面这个类,go是个button
}
class go implements OnClickListener{
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
//根据随机数value的不同,explain显示不同的内容
if (value=="1"){
explain.setText(R.string.qian1);
}
else if (value=="2"){
explain.setText(R.string.qian2);
}
else if (value=="3"){
explain.setText(R.string.qian3);
}
else if (value=="4"){
explain.setText(R.string.qian4);
}
else if (value=="5"){
explain.setText(R.string.qian5);
}
else if (value=="6"){
explain.setText(R.string.qian6);
}
else if (value=="7"){
explain.setText(R.string.qian7);
}
else if (value=="8"){
explain.setText(R.string.qian8);
}
else if (value=="9"){
explain.setText(R.string.qian9);
}
else if (value=="10"){
explain.setText(R.string.qian10);
}
}
如果我在go这个类之前,直接赋值value="1",就可以输出。请各位帮我看看是什么问题。感激不尽。
但是生成了随机数value之后,却不能输出对应的文字。。主要源代码如下: value = String.valueOf((int) (Math.random() * 10+1));//生成随机数
resultView.setText(value);//输出随机数
go.setOnClickListener(new go());//调用下面这个类,go是个button
}
class go implements OnClickListener{
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
//根据随机数value的不同,explain显示不同的内容
if (value=="1"){
explain.setText(R.string.qian1);
}
else if (value=="2"){
explain.setText(R.string.qian2);
}
else if (value=="3"){
explain.setText(R.string.qian3);
}
else if (value=="4"){
explain.setText(R.string.qian4);
}
else if (value=="5"){
explain.setText(R.string.qian5);
}
else if (value=="6"){
explain.setText(R.string.qian6);
}
else if (value=="7"){
explain.setText(R.string.qian7);
}
else if (value=="8"){
explain.setText(R.string.qian8);
}
else if (value=="9"){
explain.setText(R.string.qian9);
}
else if (value=="10"){
explain.setText(R.string.qian10);
}
}
如果我在go这个类之前,直接赋值value="1",就可以输出。请各位帮我看看是什么问题。感激不尽。
解决方案 »
- 求音频淡入淡出算法
- 安装android的过程中遇到了问题,请大家帮忙看一下
- 模拟器代理上网问题
- android hander post方法 多线程OR同一个线程?
- android jni中使用C++ STL库
- android添加水印中的字体如何设置字体为边缘渐变效果
- 新建android工程中scr中没有文件怎么办,也新建不了activity,新手求帮助,谢谢
- WindowManager addView崩溃
- 在eclipse中,鼠标悬停在类名、方法名上,没有相关信息,一片空白,是怎么回事?
- Android Studio 打包后APK与Debug运行情况不一致问题请教
- 求高手帮助,关于视频文件得到视频帧数据问题
- 为什么我看不到模拟器界面的
换成
value.equal("1")value=="2"等其它表达式类似
或用将value转化为int Integer.parseInt(value) 再用switch
那就要明白字符串是应用变量 他们比较“==”的是引用地址而不是真正的值 比较的是堆中的地址是不是一样的 而不是比较栈中的值是不是一样的
建议你先看看java中的引用变量和java的内存分配等你就懂了 用equals()是正解