记录我的Java学习经历(10)
2017-10-14 23:15
344 查看
介绍
学习Java基础时做的小练习分享,请大家批评指正!
定义main方法,方法内完成:
定义长度为26,元素值为26个大写英文字母的数组chs
传递数组chs调用getStr(char[] chs)方法,获取返回值,并在控制台打印返回值
定义String getStr(char[] chs)方法
功能描述:获取长度为5的随机字符串,字符串由随机的4个大写英文字母
和1个0-9之间(包含0和9)的整数完成
代码:
学习Java基础时做的小练习分享,请大家批评指正!
String类的小练习
这道题用str+=”字符串”的方法呢,比较耗费资源(哈哈高端不,其实是懒),那就用StringBuilder方法去做(因为有append方法拼接很方便很方便,用熟了以后再IO流对字符串拼接也很方便),规则:定义main方法,方法内完成:
定义长度为26,元素值为26个大写英文字母的数组chs
传递数组chs调用getStr(char[] chs)方法,获取返回值,并在控制台打印返回值
定义String getStr(char[] chs)方法
功能描述:获取长度为5的随机字符串,字符串由随机的4个大写英文字母
和1个0-9之间(包含0和9)的整数完成
代码:
public class Task05 { public static void main(String[] args) { char[] chs = new char[26];//定义字符串数组,无言 for (int i = 0; i < chs.length; i++) {//这里用for循环对26个字符数组进行赋值 chs[i] = (char)('A'+i);//A~Z } String get = getStr(chs);//调用方法啦 System.out.println(get);//搞定输出 } //方法一: public static String getStr(char[] chs) { Random r = new Random();//随机数,别忘了导包 StringBuilder sb = new StringBuilder();//new一个Stringbuilder,一定要在for循环外new,不然白拼接了 for (int i = 0; i < 4; i++) {//只循环4次,为啥,因为题目说由4个字母和1个数字组成 sb.append(chs[r.nextInt(26)]);//从字符数组中随机一个出来,为啥是26?因为数组0~25就是26个字母啊~写27会越界异常哦 } return sb.append(r.nextInt(10)).toString();//拼接上0~9随机一个数再调用toString方法就可以返回啦~ } //方法二: public static String getStr2(char[] chs) { Random r = new Random(); StringBuilder sb = new StringBuilder(); for (int i = 0; i < 4; i++) { sb.append(chs[r.nextInt(26)]); } int a = r.nextInt(4); int b = r.nextInt(10); sb.insert(a, b);//用StringBuilder的insert方法,将一个0-9的随机数插入随机一个地方, return sb.toString(); } }
相关文章推荐
- 记录我的Java学习经历(10)
- 记录我的Java学习经历(10)
- 记录我的Java学习经历(10)
- 记录我的Java学习经历(10)
- 记录我的Java学习经历(10)
- 记录我的Java学习经历(10)
- 记录我的Java学习经历(2)
- 记录我的Java学习经历(4)
- 记录我的Java学习经历(2)
- 记录我的Java学习经历(1)
- 记录我的Java学习经历(4)
- 记录我的Java学习经历(5)
- 记录我的Java学习经历(2)
- 记录我的Java学习经历(5)
- 记录我的Java学习经历(4)
- 记录我的Java学习经历(4)
- 记录我的Java学习经历(1)
- 记录我的Java学习经历(2)
- 记录我的Java学习经历(4)
- 记录我的Java学习经历(1)