java基础
-
把基本数据类型转换为对应的包装类类型
-
自动拆箱
String- 通过构造方法创建
通过 new 创建的字符串对象,每一次 new 都会申请一个内存空间,虽然内容相同,但是地址值不同
- 直接赋值方式创建
以“”方式给出的字符串,只要字符序列相同(顺序和大小写),无论在程序代码中出现几次,JVM 都只会建立一个 String 对象,并在字符串池中维护
重载的方法在同一个类中,方法名一样,参数列表数量,类型不同
默认double 且范围最大
byte short char 参与运算时,自动转换为int类型
字符串效果上相当于字符数组( char[ ] ),但是底层原理是字节数组( byte[ ] )
Java 程序中所有的双引号字符串,都是 String 类的对象
直接赋值方式创建的String,内容相等==就是true,new出来的不是(比较的是对象地址值)
String a="agb";
for (int i = 0; i <a.length() ; i++) {
System.out.println(a.charAt(i));
}
成员变量private,提供对应的getXxx()/setXxx()方法
封装好处:
通过方法来控制成员变量的操作,提高了代码的安全性
把代码用方法进行封装,提高了代码的复用性
-
提供一种存储空间可变的存储模型,存储的数据容量可以发生改变
-
ArrayList集合的特点
循环删除指定元素时必须倒叙删,不然会因为索引变化引发异常。
for(int i = list.size() - 1; i >= 0; i--){ String item = list.get(i); if(target.equals(item)){ list.remove(item); } }
迭代器remove方法删除(推荐)
Iterator iter = arrayList.iterator(); while (iter.hasNext()) { if (iter.next().equals("要删除的元素内容")) { iter.remove(); } }
使用继承,需要考虑类与类之间是否存在is..a的关系,不能盲目使用继承
is..a的关系:谁是谁的一种,例如:老师和学生是人的一种,那人就是父类,学生和老师就是子类
内部类
第二种方法
遍历map
第二种遍历方式: