已采纳回答 / ziom
首先解释一下构造器,构造器其实就是构造方法,有的人喜欢叫构造器,也有叫构造函数的,都是指的一个东西。大多数人应该还是会把它称作构造方法。无参构造器自然也就是无参构造方法,也就是没有参数的构造方法。构造方法的官方定义有点抽象,你可以自行去百度一下,其实初学的时候很多概念性的东西不理解也没关系,学到后面,敲的代码多了自然就会懂了。求采纳求采纳!
2017-03-11
已采纳回答 / haisunhee丶
<...图片...>这张图应该很直观了吧! 看完视频可以自己动手敲一下,不懂的 debug!
已采纳回答 / xiaoxin3839519
这里是按Unicode计算字符串长度,而不是以字节单位获得字符串的长度,所以汉字的长度是1,不是2,加上两个空格长度就是10,另外字符串中字符的索引是从0开始的,所以str.indexOf(编)=8,表示的是在第9个字符位置上。
2017-03-09
已采纳回答 / 猪丶猪侠
split()方法是按照括号里面的内容拆分成数字, 比如str字符串的内容是“学习 java 编程”,那么str.split(" ")就会把str拆分成 "学习","Java","编程" 三个字符串 然后存在arr字符串数组里,如果是str.split("习"),就会把str拆分成 "学", " java 编程"两个字符串。学习的时候哪里不懂可以尝试把代码替换下再运行看发生什么变化,这样学习才能事半功倍。
2017-03-09
已采纳回答 / 猪丶猪侠
public String toString(){return name+"\t"+sex+"\t"+age+"\t"+address;}这里是重写了toSrting()方法,你可以试着把这代码注释掉,那打印出来的就是User对象的地址,当你用上这代码时,打印出的就是重写toString()方法里的内容。
2017-03-08
已采纳回答 / 慕粉1406301482
小姐姐好厉害,自己拓展。恩,这次老师只比较了name 的值,因为是想检验是否包含课程。重写的equals方法里面比较的就是name 。我试了一下,ID随便赋值,只要课程名符合,contain()返回true。
2017-03-08
已采纳回答 / qq_李意成_0
你目前用的是List接口,元素可以重复。首先你在第三个位置上添加的是 5:数学。所以当你重复添加 1:数据结构 时获取到的是当前位置上的数据 即 5:数学而实际你添加的是1:数据结构。
2017-03-06
已采纳回答 / ziom
你定义的这个方法返回值类型是String, 所以编译器会校验你的整个方法是否一定会返回一个String, 现在你这种写法对于编译器来说,就是有可能不会返回String(比如newBook.length==0或者循环中的if条件不成立), 试试在for循环下面,也就是这个方法的最后再 return ""; 返回一个空字符串。
2017-03-06
已采纳回答 / WhiteJj
可能你重写了course类的equals方法,所以contains方法在使用时的机制比较的是内容,所以即使你新创建的对象,只要同名,就会返回ture
2017-03-05
已采纳回答 / ziom
会抛出一个算数异常,提示不能被0除。话说这种问题你自己实际写个demo测试一下不就知道了吗
已采纳回答 / qq_这是只仓鼠_0
研究了一段时间后发现所谓无序,并非是输出的结果每次会不一样,而是放进去之后没有顺序,Map<String, Integer> m = new HashMap<>();for(int i=0; i<10; i++) {
m.put("key"+i, i); } System.out.println(m);这段代码就能看出来,放进去的时候是1-10,输出的却不是,但是输出的结果却是固定的,也就是说没有顺序但是执行结果缺一致,深入源码发现其通过放入的对象hashcode计算...
2017-03-03