杜老师,我这个String占用内存是用的num1-num2,应该是正的,为什么运行出来的结果是负的呢?麻烦您帮忙看一下,谢谢您
老师你好视频里面说join()是调用他的线程会阻塞,main线程被阻塞了,意思就是main线程与t是调用与被调用的关系?main的优先级比t高是吗?
老师,这样敲:
int buf = 0; // 储存读到的字节 while( (buf = fis.read()) != -1){ System.out.print((char)buf+" "); }
返回的是:a b c d e f
为什么这样
while( fis.read() != -1){ System.out.print((char)fis.read()+" "); }
返回的是:b d f?
我创建的文件里面内容是adcdef
老师这个是怎么回事呀,为什么说不允许出现noNameSpaceSchemaLocation这个属性呀,而且我在idea中打这个属性的名字的时候idea也没有出现提示
请问,静态代理模式不是应该让接口的引用直接指向new出来的对象吗?如链接里的这个代码:
被代理类:
public class Hello implements HelloInterface{ @Override public void sayHello() { System.out.println("Hello zhanghao!"); }}
public class HelloProxy implements HelloInterface{ private HelloInterface helloInterface = new Hello(); @Override public void sayHello() { System.out.println("Before invoke sayHello" ); helloInterface.sayHello(); System.out.println("After invoke sayHello"); }}
可以看到HelloProxy类中的接口直接指向了new出来的Hello类的对象。
可视频里是通过构造函数传入对象进行赋值的,这样怎么保证是静态代理呢?这样和装饰器模式还有什么区别呢老师?
嵌套锁形成了“外面等里面,里面等外面”所以形成了对峙状态,然后就死锁了,是这一样的吗
一、老师这是我的代码,但是复制过来,出来以后是乱码
package com.xh.text1; import java.io.*; public class BufferReaderAndBufferWriter { public static void main(String[] args) { File file1 = new File("C:\\Users\\123\\Desktop\\17-2游戏合集.txt"); File file2 = new File("C:\\Users\\123\\Desktop\\17-2游戏合集3.txt"); BufferedReader br = null; BufferedWriter bw = null; try { br = new BufferedReader(new FileReader(file1)); bw = new BufferedWriter(new FileWriter(file2)); String line = null; if((line = br.readLine()) != null){ bw.write(line); bw.newLine(); bw.flush(); } } catch (IOException e) { e.printStackTrace(); } finally { if (bw != null) {try { bw.close(); } catch (IOException e) { e.printStackTrace(); }} if (br != null) {try { br.close(); } catch (IOException e) { e.printStackTrace(); }} } } }
二、这是两个文件分别图片
一、老师,当hashSet数组上的链表超过八时,是把整个数组上的链表都改为红黑树,还是只改变该位置所对应的数组空间的链表为红黑树?
一、老师,如果说ArrayList的toArray方法转String数组时,String数组空间不够,他这是会扩充String数组到ArrayList所需要的大小是吧。
老师我这个try catch和视频里的不一样,怎么处理
String str="1234abcd"; System.out.println(Integer.parseInt(str));//杜老师,这个第二句话的意思是什么
老师,使用ListIterator逆向遍历的时候我有疑惑?正向遍历的时候,集合里有4个元素,对应下表0,1,2,3.
请问正向遍历的时候ListIterator的指针是不是在-1的位置?这样System.out.println(listIte.next)才会输出第0个元素
当遍历到最后一个元素的时候下标是三。他后面没有元素,前面有元素。这时候用System.out.println(listIte.previous)输出的不是倒数第二个元素吗?但是为什么正确的情况确是输出了最后一个元素,它的指针不是在最后一个元素上吗,输出前一个不就是倒数第二个吗?
我这里一直没想通,请老师解答一下
一、老师,这里说prev.next = null;了以后,直接就说prev没了,这是为什么啊,prev还指向hello啊,源码里面也没有删除prev,这个指针不会无缘无故消失啊
批注 2020-09-23 215202.png
试了很多浏览器360极速浏览器,还有chrome浏览器,都不行
问题:在计算系统时间时,我后面的时间减去前面的时间,结果为负数,这是怎么回事啊
package com.xh.StringBuilderAndBuffer; public class text2 { public static void main(String[] args) { String s = ""; StringBuilder sb = new StringBuilder(""); long num1 = Runtime.getRuntime().freeMemory();//获取系统剩余内存空间 long time1 = System.currentTimeMillis();//获取现在的时间; for(int i = 0;i < 5000;i++){ s = s + i; } long num2 = Runtime.getRuntime().freeMemory();//获取系统剩余内存空间 long time2 = System.currentTimeMillis();//获取现在的时间; System.out.println(num2-num1); System.out.println(time2 - time1); num1 = Runtime.getRuntime().freeMemory();//获取系统剩余内存空间 time1 = System.currentTimeMillis();//获取现在的时间; for(int i = 0;i < 5000;i++){ sb.append(i); } num2 = Runtime.getRuntime().freeMemory();//获取系统剩余内存空间 time2 = System.currentTimeMillis();//获取现在的时间; System.out.println(num2-num1); System.out.println(time2 - time1); } }
非常抱歉给您带来不好的体验!为了更深入的了解您的学习情况以及遇到的问题,您可以直接拨打投诉热线:
我们将在第一时间处理好您的问题!
关于
课程分类
百战程序员微信公众号
百战程序员微信小程序
©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园网站维护:百战汇智(北京)科技有限公司 京公网安备 11011402011233号 京ICP备18060230号-3 营业执照 经营许可证:京B2-20212637