国际惯例,每天更新答疑解惑。网友们在群里有很多问题讨论,小编挑几个很有代表性的问题给大家叨叨几句。
昨天有网友对于Java群中资料少表达了不满,小编赶快去群里看了看是不是真的少,发现有Java编程思想、Java核心技术卷I、正则表达式等,在小编看来可能是已经够了,可能是因为没有视频资源吧,这个问题我尽快申请网盘满足大家的需求。
小编根据自己的学习经历给大家一些建议:
小编真的很想让大家能够快速的学习到知识,这样大家都能开开心心的学习,快快乐乐的生活,面朝大海春暖花开,追寻自己的梦想!
群里经常有网友说代码有问题,不知道哪出错了,有热心的网友就会热心的帮忙看代码,看了一会发现前后变量拼写错误,或者是Java关键字拼写错误,被网友鄙视了,弄了个大红脸。这个问题其实在用IDE编辑的时候会自动给你提示,不需要你自己再去检查,但是小编从这个问题想给网友们一些在实际编程中的意见:
小编暂时想到以上几点建议,网友们可以参考一下。
在Java中创建一个字符串通常是下面的两种代码:
String s = "abcd"; 或者 String s1 = new String("abcd");
这两种方式都创建了了一个字符串,但是这两种方式是不一样的,可以看下图:
对于上图中s、s1、s2它们三个都是指向字符串常量池中的"abcd",所以s==s1==s2;
对于s3则是在堆中创建一个String("abcd")对象,s.equals(s3)是true,但是s==s3是false;
关于字符串常量池:JVM为了提高性能和减少内存开销,在实例化字符串常量的时候进行了一些优化。为了减少创建的字符串的数量,字符串类维护了一个字符串池,每当代码创建字符串常量时,首先检查字符串常量池,如果字符串已经存在池中,就返回池中的实例引用,如果字符串不在池中,就会实例化一个字符串并放到池中。但是通过new操作符创建的字符串对象不指向字符串池中的任何对象。
光说不练假把式,下面的问题是群中网友的题目,看看你能不能解答。
答案明天公布。
如果你还觉得回答不够彻底就直接加群问小编或者在公众号直接留言,微信公众号:程序员互动联盟(coder_online)。
本文属原创,拒绝转载,违者必究