在java中利用随机数函数生成字符串的问题

利用随机数函数生成n个字符,依次拼接到“Words:”字符串的末尾,并输出该字符串的长度,大写英文字母的个数。

第1个回答  推荐于2016-08-31
你好,按照你的要求写的代码如下,给了注释和运行结果,可以直接运行

public class test1 {
public static void main(String[] args) {
// 把0-9、a-z、A-Z全存在一个字符串里
StringBuffer array = new StringBuffer();
for (int i = 0; i <= 9; i++) {
array.append(i);
}
for (int i = (int) 'a'; i <= (int) 'z'; i++) {
array.append((char) i);
}
for (int i = (int) 'A'; i <= (int) 'Z'; i++) {
array.append((char) i);
}
int length = array.length();

// 假设n现在为100
int n = 100;
// 存储最后生成的字符串
StringBuffer str = new StringBuffer("Words:");
int count = 0;// 统计大写字母个数
for (int i = 0; i < n; i++) {
// 获得随机位置的字符
char c = array.charAt((int) (Math.random() * length));
str.append(c);
// 统计大写字母
if (c >= 'A' && c <= 'Z') {
count++;
}
}

// 打印结果
System.out.println(str.toString());
System.out.println("该字符串的长度: " + str.length());
System.out.println("大写英文字母的个数: " + count);
}
}

运行结果:
Words:GVppVh3qrKjC4FB4uwuPmL4FTM4nTg2yBhFy0hSIy2NX9wxrHSqHQ1fhUyCAn5hynvvMqm6h4T2PCXAV8pn05X9Sy5KbbaQeuVdT
该字符串的长度: 106
大写英文字母的个数: 39本回答被提问者采纳
第2个回答  2011-11-19
这个是最基本的拼接的问题,最好还是多看看书的
相似回答