已采纳回答 / qq_泪与笑_03540974
因为在你的循环中。你判断了K==0的情况,但是你用的是continue,仅仅只是跳过了生成字符串这一个for循环,但是你要考虑到因为k=0,这次生成字符串是空的,你必须要跳到最外层:i这一层。必须让i--,重新生成字符串。
2017-05-07
已采纳回答 / 元气满满来学习
查找学生姓名那里的 if(students.containsKey(new Student(null,namein)))改成 if(students.containsValue(new Student(null,namein)))就好啦!望采纳
已采纳回答 / AquanGeek
<...code...>利用StringBuffer要注意缓存里的已经有的字符 //清除StringBuffer里面所有的字符,否则它会叠加字符(重要) sb.delete(0, sb.length());
2017-05-05
已采纳回答 / Damon__huang
int length = random.nextInt(10);随机数的范围是[0,10),前闭后开。当length取值为0时,new StringBuffer().toString()的值就是空值""。
2017-05-03
最新回答 / earlsun
return result;这局删了就没错了
已采纳回答 / 慕粉4014187从头再来
equals(),hashCode()是用来比较对象进行查询的,而Set集合框架中不允许结点相同,是系统设定的,比如他比较的可能是对象中的变量,如整形,字符串等等,而他们默认都是可以比较的。又或者从更底层的数据进行比较。
2017-04-29
已采纳回答 / winxblast
Student类中定义的ID为String类型,这里数字+空字符串“”就会自动把数字转换为String类型,所以没有问题。不加“”就会把整型传给String,就出错
2017-04-27
已采纳回答 / 陈迪0
你的for循环里的if else 写好复杂的,而且根本没有起到作用,首先,改成for(int i=0:i<(A=0)?1:A;i++),然后你的str赋值大小写字母和数字,我觉得这样太局限了,你应该用阿克斯码更好,然后用阿克斯码转换成字符赋予字符串,就好了
2017-04-25