原文:生产随机数
代码:
public class MainActivity extends Activity {
private Button button;
private String code;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button=(Button)findViewById(R.id.aa);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
//true 和false代表是否随机数字,4代表几位随机数。
code = createRandom(true,4);
Toast.makeText(getApplicationContext(),""+code,Toast.LENGTH_SHORT).show();
}
});
}
public static String createRandom(boolean numberFlag, int length){
String retStr = "";
String strTable = numberFlag ? "1234567890" : "1234567890abcdefghijkmnpqrstuvwxyz";
int len = strTable.length();
boolean bDone = true;
do {
retStr = "";
int count = 0;
for (int i = 0; i < length; i++) {
double dblR = Math.random() * len;
int intR = (int) Math.floor(dblR);
char c = strTable.charAt(intR);
if (('0' <= c) && (c <= '9')) {
count++;
}
retStr += strTable.charAt(intR);
}
if (count >= 2) {
bDone = false;
}
} while (bDone);
return retStr;
}
}