Java学习(一)
2016-03-16 11:10
357 查看
Java学习心得
参考书目 《head first java》变量
变量有两种:基本类型和引用类型方法操作实例变量
Java是通过值传递的,也就是说通过拷贝传递对于基本变量类型,Java是通过值传递的;对于对象来说,Java是拷贝传递
int f(int b){ b=1; } public static void main(String[] args){ int a=2; System.out.println("before:" + a); f(a); System.out.println("after:" + a); }
这时输出
before:2 after:2
Java不支持指针,所以如果想改变一个基本变量类型的变量只能通过函数返回
class Book{ String author; } class Main{ void f(Book b){ Book b = new Book(); b.author = "wdw"; } void g(Book b){ b.author = "wdw"; } public static void main(String[] args){ Book b = new Book(); b.author="wj"; System.out.println("before : "+b.author); f(b); System.out.println("after f : "+b.author); g(b); System.out.println("after g : "+b.author); } }
输出
before : wj after f : wj after g : wdw
当
Book b = new Book();的时候创建一个Book对象b,相当于b指向这个Book对象,并给这个对象的author赋值为’wj’。
然后执行
f(b)的时候,先拷贝一份之前的b,设为b1,指向之前的对象,原先的b不动。f(b)这个方法中,又创建了个对象,将b1指向这个对象,并将这个对象的author赋值为wdw,但是主程序中输出的是b.author,所以还是wj。
最后执行
g(b)的时候,同样还是拷贝一份b2,但是方法中并没有创建新的对象,b2还是指向最初的对象,然后赋值最初的对象,所以最终输出为wdw。
使用==来比较两个基本类型或判读两个引用是否引用同一个对象
使用equal()来判断两个对象是否在意义上相等
Java普通循环for(int i=0;i<10;i++){}
Java5.0以后可以对数组(或其他集合)使用加强版for循环
for(int cell : LocationCells){}
对LocationCells中每个元素执行一次,每次循环都会将内容赋给cell变量
使用Interger.parseInt()来取得string的整数值
ArrayList
ArrayList myList = new ArrayList();add(Object elem)向list中加入对象参数
remove(int index)在索引参数中移除对象
remove(Object elem)移除该对象
contains(Object elem)如果和对象参数匹配返回true
isEmpty()如果list中没有元素返回true
indexOf(Object elem)返回对象参数的索引或-1
size()返回list中元素的一个数
get(int index)返回当前索引参数的对象
相关文章推荐
- 温故1:Java char
- java 最近将工作中用到的工具总结——日期工具
- java实现在线预览office文档
- java中线程分两种,守护线程和用户线程。
- eclipse自动补全的设置
- java.lang.OutOfMemoryError异常解决方法
- 深入 String 类
- axis2 以 RPC的方式访问webservice
- java中subString、split、stringTokenizer三种截取字符串方法的性能比较
- Java FineReport报表工具导出EXCEL的四种方式
- Java NIO系列教程(四) Scatter/Gather
- java 反射,注解,泛型,内省(高级知识点)
- zookeeper可视化Eclipse插件安装
- Java中的多线程浅析(1)
- java 反射
- Java设计模式之装饰器模式
- 假如时光倒流, 我会这么学习Java
- 【笔记】从eclipse移植AS的各种情况
- 最近突然发现Myeclipse中New菜单项下常用选项都不见了 怎么调整?
- Eclipse 插件大全 (持续更新)