- ArrayList:是集合中最常用的一种,集合类似于数组,也是容器,用来装数据的,但集合的大小可变。(比数组好用)
- API:(jdk-9.chm)
先学习包:包是用来分门别类的管理各种不同程序的,类似于文件夹,建包有利于程序的管理和维护。
导包:在自己程序中调用其他包下的程序的注意事项
如果当前程序中,要调用自己所在包下的其他程序。可以直接调用。(同一个包下的类,互相可以直接调用)
如果当前程序中,要调用其他包下的程序。则必须在当前程序中导包,才可以访问!导包格式: import包名.类名;
如果当前程序中,要调用Java提供的程序。也需要先导包才可以使用;但是Java.lang包下的程序是不需要我们导包的,可以直接使用.
如果当前程序中,要调用多个不同包下的程序。而这些程序名正好一样,此时默认只能导入一个程序,另一个程序必须带包名访问,
- 3.创建String对象的两种方法:直接赋值和使用构造器(四种)
4.String方法
(变量放置在堆内存中,返回地址相同??是的,请看下面的块引用)
- “”赋值和new的区别(为什么“”赋值然后用==比较的时候返回值是true的原因)
- 只要是以“…”方式写出的字符串对象,会存储到字符串常量池,且相同内容的字符串
只存储一份;
但通过new方式创建字符串对象,每new一次都会产生一个新的对象放在堆内存中。
所以以后尽量使用equals(); ==容易出现业务bug :)
5.StringBuilder:
(结果为false,sb1创建两个对象,sb2创建一个对象!!!)
- append——直接进行字符串拼接,不会重新创建对象(回想一下,String的拼接直接用“+”就可以了)
- 链式编程:sb2.append("好好").append("学习").append("天天向上");//结果:好好学习天天向上
- String sb3 = sb1.toString();//将SpringBuilder变成String
- StringBuilder sb2 = new StringBuilder(String s);//通过构造方法可以实现把String转化成StringBuilder
- String不适合频繁的进行累加计算,这时候StringBuilder就很适合,效率较高
6.ArrayList(只能存储引用类型,不能存储基本类型):1、会提供创建容器对象的方式
2、会提供供相应的方法对容器进行操作
3、添加数据
4、删珍某个数据隆改某个数据获亟某个数据
//1、创建和添加
ArrayList<string> list = new ArrayList<>();
System.out.println(list);//[]
list.add("everyday");
list.add("java" );
list.add("好好学习天天向上");
System.out.println(list);//[everyday,java,好好学习天天向上]
//2、往集合中的某个索引位置处添加一个数据
list.add( 1,"前端");
System.out.println(list);
//3、根据索引获取集合中某个索引位置处的值
String s = list.get(0);
System.out.println(s);
//4、获取集合的大小(返回集合中存储的元素个数>
System.out.println(list.size());
//5、根据索引删除集合中的某个元素值,会返回被删除的元素值给我们
String s1 = list.remove( 1);
System.out.println(s1);
System.out.println(list);
//6、直接删除某个元素值,删除成功会返阿true,反之
System.out.println(list.remove( "前端"));
System.out.println(list.remove( "java"));
//7、修改某个索引位置处的数据,修改后会返回原来的值给我
System.out.println(list.set("每天"));
System.out.println(list);