1、一个小程序,关于Java值传递和引用传递的:

package com.lk.B;public class Test1 {public static void main(String[] args) {// TODO Auto-generated method stubTest1 t = new Test1();t.first();}public void first(){int i = 5;Value v = new Value();v.i = 25;second(v,i);System.out.println(v.i);}public void second(Value v , int i){i = 0;v.i = 20;Value val = new Value();v = val;System.out.println(v.i+" "+i);}
}class Value{public int i = 15;
}

2、RandomAccellFile是比较不寻常的类,它直接继承与Object,它并不属于Streams结构的一部分。

3、Java编程思想里面有个关于值传递和引用传递的经典的解释:如果Java是传值,那么传递的是值的副本;如果Java是传引用,那么传递时引用的副本。

即不管Java参数的类型是什么,一律传递参数的副本。

下面有三个例子:

package com.lk.B;public class Test2 {public static void main(String[] args) {// TODO Auto-generated method stubboolean test = true;System.out.println(test);test(test);System.out.println(test);}public static void test(boolean test){test = !test;System.out.println(test);}}

true
false
true

package com.lk.B;public class Test2 {public static void main(String[] args) {// TODO Auto-generated method stubStringBuffer sb = new StringBuffer("Hello");System.out.println(sb);test(sb);System.out.println(sb);}public static void test(StringBuffer sb){sb.append(",World!");}}

Hello
Hello,World!

package com.lk.B;public class Test2 {public static void main(String[] args) {// TODO Auto-generated method stubString s = "Hello";System.out.println(s);test(s);System.out.println(s);}public static void test(String s){s = "World";}}

Hello
Hello

对于String类型,String类是final的,因此,不能继承和修改这个类。是s = “World”是隐含地让Java生成一个新的String对象。既然对象都是新的,那就和原来的“Hello”没有任何关系。当函数结束,s作用消失,原来的内存地址上的内容未加改变,所以打印的结果仍然是Hello。

4、当读取的问价是一个比较大的文本文件(很多字节数的文本文件),那么就要考虑到BufferedReader这个类。

new BufferedReader(new InputStreamReader(new FileInputStream("file.name")));

5、一个字符串写入文件的例子:

package com.lk.B;import java.io.FileOutputStream;
import java.io.IOException;public class Test2 {public static void main(String[] args) {// TODO Auto-generated method stubFileOutputStream fos = null;try {fos = new FileOutputStream("FileName.txt");fos.write("字符串写入文件".getBytes());} catch (IOException e) {// TODO Auto-generated catch block
            e.printStackTrace();} finally{try {fos.close();} catch (IOException e) {// TODO Auto-generated catch block
                e.printStackTrace();}}}
}

6、看到一个判断是一个数是不是2的阶次方数。

一个非常机智的算法:如果一个数是2的阶次方数,那么它的二进制数的首位一般是1,后面接若干个0.比如8就是1000,64就是1000000.如果将这个数减1,再与该数做和(&)运算,则应该全为0.(例如:8与7,一个二进制数是1000,一个二进制数是111,它们做和运算后全为0)。所以((d-1)&d)==0。

package com.lk.B;public class Test3 {public static void main(String[] args) {// TODO Auto-generated method stubint a = 256;//2,4,8,16,32,64,128,256...System.out.println((a-1)&a);//输出0
    }}

转载于:https://www.cnblogs.com/luankun0214/p/4416198.html

2015-04-11一些知识点相关推荐

  1. 始于2015年11月23日,终于2018年08月08日

    留念. 2015年11月23日:在一起 2016年01月17日-21日:北京机场,我们❤ 2016年04月16日:去他所在城市--成都 2016年06月04-06日:第一次小旅游--都江堰.青城山 2 ...

  2. 微软批量授权版WINDOWS 10资料(截至到2015年11月,此处无下载地址)

    微软批量授权版WINDOWS 10资料: 1.专业版: Windows 10 专业版(2015 年 7 月发布) WINDOWS 10专业版简体中文,32位/64位 SW_DVD5_Win_Pro_1 ...

  3. ubuntu 12.04/11.10 PPA 安装 Nvidia 295.59

    2019独角兽企业重金招聘Python工程师标准>>> Nvidia 295.59 增加支持以下GPUs: NVS 5400M NVS 310 GeForce GT 620M GeF ...

  4. 2015年11月 广州深圳 MVP 线下活动

    2015年11月25日,微软广州会议室 2015年11月27日,微软深圳会议室 舒老师的分享主题<说好的负载均衡呢?>主要针对2012年之后的重大误解进行解释. 误解1: AlwaysOn ...

  5. python快速编程入门例题-Python快速编程入门,打牢基础必须知道的11个知识点 !...

    Python被誉为全世界高效的编程语言,同时也被称作是"胶水语言",那它为何能如此受欢迎,下面我们就来说说Python入门学习的必备11个知识点,也就是它为何能够如此受欢迎的原因. ...

  6. python快速编程入门第13章-Python快速编程入门,打牢基础必须知道的11个知识点...

    Python被誉为全世界高效的编程语言,同时也被称作是"胶水语言",那它为何能如此受欢迎,下面我们就来说说Python入门学习的必备11个知识点,也就是它为何能够如此受欢迎的原因. ...

  7. python语言必背代码-Python入门必须知道的11个知识点

    Python被誉为全世界高效的编程语言,同时也被称作是"胶水语言",那它为何能如此受欢迎,下面我们就来说说Python入门学习的必备11个知识点,也就是它为何能够如此受欢迎的原因. ...

  8. python入门有基础-Python入门必须知道的11个知识点

    Python被誉为全世界高效的编程语言,同时也被称作是"胶水语言",那它为何能如此受欢迎,下面我们就来说说Python入门学习的必备11个知识点,也就是它为何能够如此受欢迎的原因. ...

  9. Ubuntu 10.10, 11.04, 11.10这三个版本无法从优盘启动

    问题:Ubuntu 10.10, 11.04, 11.10这三个版本无法从优盘启动 解决:从U盘启动安装的时候,会卡住不动. 搞定办法相当简单,修改syslinux/syslinuxfg文件: 将de ...

  10. 58-混沌感悟.(2015.2.11)

    混沌感悟 ·混沌出现孕育秩序,稳态必将走向自我毁灭. ·稳态只会在系统内运动,混沌打破稳态,才会形成超越原系统的新秩序. ·市场所欲,即我所欲 ·通常,能量遵循最小阻力途径.最小阻力需根据形而上.形而 ...

最新文章

  1. “学了半年后,我要揭开Python 3宗罪!”
  2. td不显示边框_FANUC Series 0i Mate-TD系统上电显示SP1241 (S)D/A变换器异常维修,FANUC主板SP1_维修中心...
  3. python二十七:从最内部的循环直接跳出来
  4. db2 jdbc连接字符串中 指定currentSchema
  5. java netty和dubbo_Dubbo与Netty杂谈
  6. Ubuntu把iso写入U盘
  7. UVA - 1279 Asteroid Rangers (动点的最小生成树)
  8. 网管软件的致命伤及其合理利用的小技巧(转)
  9. Python个人快速入门学习(九)jieba库的使用
  10. 记录向 | 爬虫 | 裁判文书爬取(java)
  11. python土味情话_GitHub - MMstarry/itchat: 微信机器人 土味情话
  12. 使用css中的white-space:pre-wrap;让html浏览器显示空白空格符
  13. 系统错误:蓝屏提示IRQL-NOT-LESS-OR EQUAL
  14. 文樾杰出五金交电进销存管理系统 v6.12 下载
  15. 认识USB-TYPEA/B/C/micro/mini
  16. python try: except: 捕获到的异常输出到 log文件
  17. 如何选择适合自己的吉他弦(下)
  18. IMU之磁力计校准地磁场计算磁航向
  19. 计算机应用技术博士,全国新增所大学计算机应用技术博士点
  20. Lucene,Solr,Elasticsearch之间的区别和联系

热门文章

  1. 在WebStorm环境中给nodejs项目中添加packages
  2. xUtils项目框架
  3. 关于CAS服务器磁盘占用的问题,锁定目录惹的祸
  4. python界面设计模块_Python+Pycharm+PyQT5可视化程序设计入门
  5. ie浏览器打开aspx文件乱码_ie浏览器下载文件时文件名乱码
  6. Oracle 备份与还原
  7. acill排序 java_Map集合按照ASCII码从小到大(字典序)排序--JAVA
  8. linux分区文件 pe,关于linux的磁盘和分区的操作(一)
  9. MySQL 日期时间类型
  10. oracle 查出所有空表,Oracle查看某个用户上的所有空表