为了账号安全,请及时绑定邮箱和手机立即绑定

按照老师String的List进行排序课后作业帮看看

public void lianXiTest(){ String str="0123456789qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM"; Random ran=new Random(); //循环十次,每次得到一个字符串,共得到十个字符串,整体最外边循环 for(int i=0;i<10;i++){ //第三季2-6的StringBuilder类的常用方法,用来储存字符串,减少临时变量 StringBuilder hobby=new StringBuilder(); //do-while循环,意思是序列中包含所添加的元素就再次循环(while中判断保证每次传入不重复) do{ //自动生成10以内正整数0123456789,课程要求10以内随机整数 int size=ran.nextInt(10); //循环到这里每次都会输出一个字符串,这个字符串而且有可能是空,长度最长为9 for(int a=0;a0){ //随机产生与str长度对应的数字 int num=ran.nextInt(62); //根据随机产生数字所产生的char类型指定位置字符 char p=str.charAt(num); //将字符添加到StringBuilder队尾 hobby.append(p); } else{ //创建新对象,为空,弄了好久才想到这样,并赋值给hobby, //这个if-else要放到for内,要不执行到空不会加一,可能执行11次 StringBuilder hobby1=new StringBuilder(""); hobby=hobby1; continue;} } } //当拥有再次执行上边,拥有时a并不会加1 while(lianTest.contains(hobby.toString())); //把元素添加到序列中 lianTest.add(hobby.toString()); } System.out.println("-------------排序前--------------"); //通过foreach遍历输出 for(String string:lianTest){ System.out.println("元素:"+string);} System.out.println("-------------排序后--------------"); //排序 Collections.sort(lianTest); //再次通过foreach遍历输出排序后的 for(String string:lianTest){ System.out.println("元素:"+string); } }
详细地址链接:http://www.imooc.com/article/9583

正在回答

1 回答

  if(size>0){        //随机产生与str长度对应的数字        int num=ran.nextInt(62);        //根据随机产生数字所产生的char类型指定位置字符        char p=str.charAt(num);        //将字符添加到StringBuilder队尾       hobby.append(p);       }        else{            //创建新对象,为空,弄了好久才想到这样,并赋值给hobby,            //这个if-else要放到for内,要不执行到空不会加一,可能执行11次            StringBuilder hobby1=new StringBuilder("");             hobby=hobby1;            continue;} }
我运行了程序之后,发现没必要判断size是否为零,好像多余!!!

 

0 回复 有任何疑惑可以回复我~
#1

慕粉小蜗牛 提问者

不多于,因为规定10以内,0123456789,出现了0的情况,只能为空一次,你可以多试试,你可以把int size=ran.nextInt(10)里边10,变得小一点,这样你试试几次,比如5
2016-06-24 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

按照老师String的List进行排序课后作业帮看看

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号