package com.example.caicaikan;
/**
* 12345对应着abcde
*
*
* */
public class Test {
String[] message=new String[]{"a","b","c","d","e"};
int[] number=new int[]{1,2,3,4,5};
public void reset(){
for(int i=0;i<3;i++){
int temp = number[i]; //将数组元素i保存到临时变量中
int index = (int) (Math.random()*5); //生成一个随机数
number[i] = number[index]; //将随机数指定的数组元素的内容赋值给数组元素i
number[index] = temp;
}
System.out.print(" ssssssssssss ");
//int[] xx={1,2,3};
int[] xx=new int[3];
for(int i=0;i<3;i++){
System.out.print(number[i]);
System.out.print(message[number[i]-1]);
xx[i]=number[i];
}
System.out.print(" ooooooooooooooooooo ");
int index = (int) (Math.random()*3);
System.out.print("结果为:"+xx[index]);
System.out.print("结果为:"+message[xx[index]-1]);
}
public static void main(String[] args) {
// Test test=new Test();
// test.reset();
//
System.out.println("循环没有开始");
System.out.println("现在开始测试continue");
for (int i = 0; i < 3; i++) {
System.out.println("开始第" + i + "次for循环");
if (i == 1) {
continue;
}
System.out.println("看看continue后这里执行了吗?");
}
System.out.println("continue测试完毕\n***********************");
System.out.println("现在开始测试break");
for (int i = 0; i < 3; i++) {
System.out.println("开始第" + i + "次for循环");
if (i == 1){
break;
}
System.out.println("看看break后这里执行了吗?");
}
System.out.println("break测试完毕\n***********************");
}
}
在这个程序,最难的应该是那个随机抽取一个数字,然后对于不同的图片进行点击,如果对的话,则显示正确的结果,否则则是错。上面那些代码是用来测试的,java语言。因为android测试的话,要不断地装程序进手机里面,所以比较麻烦,所以我就用了上面的代码进行测试。也就是核心代码了,下面的则是android代码。
package com.example.caicaikan;
import java.security.PublicKey;
import android.R.integer;
import android.support.v7.app.ActionBarActivity;
import android.text.StaticLayout;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;
public class MainActivity extends ActionBarActivity {
private TextView tv1;
private ImageView iv1;
private ImageView iv2;
private ImageView iv3;
private Button bt;
private int selectedNum;
//int[] xx=new int[3];
int[] num=new int[]{1,2,3,4,5};
int[] number=new int[]{R.drawable.fangbingbing,R.drawable.huangshengyi,R.drawable.liuyifei,R.drawable.one,
R.drawable.wuyifan};
String[] message=new String[]{"范冰冰是哪个","黄圣依是哪个","刘亦菲是哪个","美女是谁","吴亦凡是哪个"};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tv1=(TextView) findViewById(R.id.tv1);
bt=(Button) findViewById(R.id.bt);
iv1=(ImageView) findViewById(R.id.iv1);
iv2=(ImageView) findViewById(R.id.iv2);
iv3=(ImageView) findViewById(R.id.iv3);
reset();
iv1.setImageDrawable(getResources().getDrawable(number[0]));
iv2.setImageDrawable(getResources().getDrawable(number[1]));
iv3.setImageDrawable(getResources().getDrawable(number[2]));
//重玩一次
bt.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
reset();
iv1.setImageDrawable(getResources().getDrawable(number[0]));
iv2.setImageDrawable(getResources().getDrawable(number[1]));
iv3.setImageDrawable(getResources().getDrawable(number[2]));
}
});
}
public void reset(){
for(int i=0;i<3;i++){
int temp = number[i]; //将数组元素i保存到临时变量中
int tem=num[i];
int index = (int) (Math.random()*number.length); //生成一个随机数
// //不让前后两次重复
// if(index==selectedNum){
// if(index<4)
// index++;
// else {
// index=0;
// }
// }
number[i] = number[index]; //将随机数指定的数组元素的内容赋值给数组元素i
num[i]=num[index];
number[index] = temp; //将临时变量的值赋值给随机数组指定的那个数组元素
num[index]=tem;
}
int[] xx=new int[3];
for(int i=0;i<3;i++){
xx[i]=num[i];
}
int ind =(int) (Math.random()*3);
String aa=null;
//不让前后两次重复
// if (xx[ind]==selectedNum) {
// if (ind<2) {
// aa=message[xx[ind+1]-1];
// tv1.setText(aa);
// selectedNum=xx[ind+1];
// } else {
// aa=message[xx[0]-1];
// tv1.setText(aa);
// selectedNum=xx[0];
// }
aa=message[xx[ind]-1];
tv1.setText(aa);
selectedNum=xx[ind];
//触碰事件
//为图片1添加监听事件
iv1.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
isRight(v,0);
}
});
//为图片2添加监听事件
iv2.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
isRight(v,1);
}
});
//为图片3添加监听事件
iv3.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
isRight(v,2);
}
});
}
//判断结果
protected void isRight(View v, int i) {
iv1.setImageDrawable(getResources().getDrawable(number[0]));
iv2.setImageDrawable(getResources().getDrawable(number[1]));
iv3.setImageDrawable(getResources().getDrawable(number[2]));
switch (i) {
case 0:
if (num[0]==selectedNum) {
Toast.makeText(this,i+"选对了,亲"+selectedNum,0).show();
} else {
Toast.makeText(this,i+"选错了,加油"+selectedNum,0).show();
}
break;
case 1:
if (num[1]==selectedNum) {
Toast.makeText(this,i+"选对了,亲"+selectedNum,0).show();
} else {
Toast.makeText(this,i+"选错了,加油"+selectedNum,0).show();
}
break;
case 2:
if (num[2]==selectedNum) {
Toast.makeText(this,i+"选对了,亲"+selectedNum,0).show();
} else {
Toast.makeText(this,i+"选错了,加油"+selectedNum,0).show();
}
break;
default:
break;
}
}
这个程序,我很早就做好了雏形,但直到现在我都不想改,这个经历告诉我们,做事一定要做好,别留下收尾,否则就很难去进行。都说是雏形,当然,是比较简陋的。那些图片的大小我都没设置好,字体也没调整好。图片我还可以不断地加进去。算法,我就没有做,还没有涉及到。能力还不行。