2017年8月18日

Scanner类nextLine()和next()的区别和使用方法

摘要: next()一定要读取到有效字符后才可以结束输入,对输入有效字符之前遇到的空格键、Tab键或Enter键等结束符,next()方法会自动将其去掉,只有在输入有效字符之后,next()方法才将其后输入的空格键、Tab键或Enter键等视为分隔符或结束符。 next()查找并返回来自此扫描器的下一个完整 阅读全文

posted @ 2017-08-18 11:05 volcan1 阅读(191) 评论(0) 推荐(0) 编辑

2017年6月13日

值传递和引用传递(不是引用类型的传递)的区别

摘要: 值传递:方法调用时,实际参数把它的值传递给对应的形式参数,方法执行中形式参数值的改变不影响实际参数的值。引用传递:也称为传地址。方法调用时,实际参数的引用(地址,而不是参数的值)被传递给方法中相对应的形式参数,在方法执行中,对形式参数的操作实际上就是对实际参数的操作,方法执行中形式参数值的改变将会影 阅读全文

posted @ 2017-06-13 20:48 volcan1 阅读(13459) 评论(0) 推荐(1) 编辑

2017年6月12日

字符串一旦定义,就表示开辟好了指定的空间,其内容就不可改变

摘要: 结果为HelloWorld,运行结果显示str的内容改变了!?事实并非如此! 由上图可以发现,str的内容未变,改变的只是str的引用,并且会产生字符串垃圾。 因此为避免大量垃圾,不应不断修改字符串内容。 阅读全文

posted @ 2017-06-12 16:43 volcan1 阅读(249) 评论(0) 推荐(0) 编辑

String类的直接赋值和构造方法赋值的区别

摘要: 直接赋值:只开辟一块堆内存空间,而且保存的字符串可以自动入池,以供其他内容相同的字符串对象使用。 构造方法:开辟两块堆内存空间,有一块成为垃圾,并且字符串的内容无法自动入池,但是可以使用String类中的intern()方法手工入池。 String str = new String("Hello") 阅读全文

posted @ 2017-06-12 15:45 volcan1 阅读(141) 评论(0) 推荐(0) 编辑

字符串常量是String类的匿名对象

摘要: 判断某一个用户输入的字符串内容是否等于指定的字符串内容,若采用 字符串对象.equals("内容") 的方式,如果用户没有输入字符串,会出现NullPointerException警告,可以采用 "字符串".equals(字符串对象) 解决这个问题。 阅读全文

posted @ 2017-06-12 15:37 volcan1 阅读(437) 评论(0) 推荐(0) 编辑

2017年6月10日

Integer和int的区别(转)

摘要: 为什么i4和i5比是true,而i6和i7比是false呢?关键就是看valueOf()函数了,这个函数对于-128到127之间的数,会进行缓存, Integer i5 = 127时,会将127进行缓存,下次再写Integer i6 = 127时,就会直接从缓存中取,就不会new了。所以i4和i5比 阅读全文

posted @ 2017-06-10 21:18 volcan1 阅读(508) 评论(0) 推荐(0) 编辑

final的好处

摘要: 1.final关键字提高了性能。JVM和Java应用都会缓存final变量。 2.final变量可以安全的在多线程下进行共享,而不需要额外的同步开销。 3.使用final关键字,JVM会对方法,变量和类进行优化。 阅读全文

posted @ 2017-06-10 10:40 volcan1 阅读(194) 评论(0) 推荐(0) 编辑

2017年6月7日

数组引用传递

摘要: 在java中,所有对象都是通过引用进行操作的。而数组也是一种对象,当把数组作为参数传递给方法时,传递的实际上就是数组对象的引用。在方法中对数组的所有操作,都会映射到原数组中,这也是java面向对象的一个重要特征。而所谓的"引用",就是java对象在堆内存的地址赋给了多个"栈内存"的变量。 阅读全文

posted @ 2017-06-07 09:52 volcan1 阅读(1717) 评论(0) 推荐(0) 编辑

2017年6月6日

构造代码块

摘要: 构造代码块就是在类中直接定义的,且没有任何前缀,后缀以及修饰符的代码块。构造代码块和构造方法一样是在对象生成时被调用,但是它的调用时机比构造方法还要早! 对象初始化不用全部都放在构造代码块中。实际上,构造代码块中的初始化是一个类的所有构造方法都共有的"交集"部分,具有个性化特征的初始化还是要放在各自 阅读全文

posted @ 2017-06-06 21:39 volcan1 阅读(128) 评论(0) 推荐(0) 编辑

==和equals()的不同点

摘要: 两者都可以用于对象的比较。"=="用于比较两个对象的内存地址值(引用值)是否相等,equals()方法用于比较两个对象的内容是否一致。 String str1 = new String("java"); String str2 = new String("java"); String str3 = 阅读全文

posted @ 2017-06-06 10:05 volcan1 阅读(84) 评论(0) 推荐(0) 编辑

导航