如果我想在字母a和字母z之间随机选择一个字母,我需要使用Random
类:
Random rand = new Random();
但是由于这只生成数字,我需要做什么才能将其应用于字母呢?
Random r = new Random();
char c = (char) (r.nextInt(26) + 'a');
Random r = new Random();
int c = r.nextInt(26) + (byte)'a';
System.out.println((char)c);
byte
类型转换? - aioobechar randomLetter = (char) ('a' + Math.random() * ('z'-'a' + 1));
public static char genChar(){
return (char)(Math.random()*26 + 'a');
}
import static org.apache.commons.lang3.RandomStringUtils.randomAlphabetic;
...
randomAlphabetic(1).toLowerCase()
如果要从(a-z)中随机选择一个字母,我会按照以下步骤进行:
Random rand = new Random();
...
char c = rand.nextInt(26) + 'a';
由于 Random.nextInt() 生成的值范围为0到25,因此您只需要添加偏移量'a'即可生成小写字母。
Random r = new Random();
char symbel = (char)(r.nextInt(26) + 'a');
if(symbel>='a' && symbel <= 'z') {
System.out.println("Small Letter" + symbel);
} else {
System.out.println("Not a letter" + symbel);
}