本想用random随机生成一个大于97小于122的数字,从而得到a~z中的一个可是要转换的的话要用到 \在加上随机生成的数字,而这样的话就不能直接把他存少到char[] c里,所以我把这样得到的用字符串存放String[] s s[x]="\\"+随机生成的数 我的问题是.如何让他把这个字符串做为一个char类型?假设上述生成得到了一个s[0]=\97怎么让这个\97转换成字母'a'?
char c=(char)(int)(Math.random()*26+97);
System.out.println(c);
通过随机函数生成,字母对应的int整型数字,然后转换才char类型的字母。
或
tring chars = "abcdefghijklmnopqrstuvwxyz";
System.out.println(chars.charAt((int)(Math.random() * 26)));
根据chars 随机截取其中的一个字母。
定义随机字母之前调用
import java.util.Arrays;
产生随机数的代码为:
char cha[]={'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'};
char ch[]=new char[5];
for(int i=0;i<ch.length;i++)
{
int index;
index=(int)(Math.random()*(cha.length));
ch[i]=cha[index];
}
System.out.println(Arrays.toString(ch));
这个是产生5个随机字母在A-Z的范围
java产生随机数和随机字母,使用madom类,示例如下:
String
new
String();s=String.valueOf(
int
n);
package com.qiu.lin.he;
public class CeShi {
public static void main(String[] args) {
int str1 = 0;
for (int i = 0; i < 25; i++) {// 你想生成几个字符的,就把4改成几,如果改成1,那就生成一个随机字母
for (int i = 0; i < 25; i++) {// 你想生成几个字符的,就把4改成几,如果改成1,那就生成一个随机字母
str = str + (char) (Math.random() * 26 + 'A');
System.out.println("输出随机生成的字符串" + str);
JDK1.0
Java的实用工具类库java.util包。在这个包中,Java提供了一些实用的方法和数据结构。例如,Java提供日期(Data)类、日历(Calendar)类来产生和获取日期及时间,提供随机数(Random)类产生各种类型的随机数,还提供了堆栈(Stack)、向量(Vector) 、位集合(Bitset)以及哈希表(Hashtable)等类来表示相应的数据结构。
以上内容参考:百度百科-java.util
本回答被网友采纳