Day04. ArrayList类、String类、static关键字详解:
1.ArrayList类
1.1引入——对象数组
使用学生数组,存储三个学生对象。
逻辑分析测试类(匿名内部类)
Student类
1.2ArrayList类的概念
ArrayList就是动态数组,在Api中java.util.ArrayList 是大小可变的数组的实现,存储在内的数据称为元素。也可称为是Array的复杂版本, 它提供了动态的增加和减少元素,此类提供一些方法来操作内部存储 的元素。 ArrayList 中可不断添加元素,其大小也自动增长。
1.3ArrayList类的使用方法
java.util.ArrayList <E> ,其中的<E>叫做泛型,意思就是指定某一类型的对象之后,只能添加该类型的对象或者数据(元素)。
构造方法:
比如制定只能添加String类型的元素,(一般第二个泛型留空).
ArrayList<String> list = new ArrayList<String>();
public boolean add(E e) : 将指定的元素添加到此集合的尾部。
案例:
使用ArrayList类,存储三个字符串元素。
常用方法
public boolean add(E e) :将指定的元素添加到此集合的尾部。
public E remove(int index) :移除此集合中指定位置上的元素。返回被删除的元素。
public E get(int index) :返回此集合中指定位置上的元素。返回获取的元素。
public int size() :返回此集合中的元素数。遍历集合时,可以控制索引范围,防止越界。
1.4如何存储基本数据类型
我们发现,只有 Integer 和 Character 需要特殊记忆,其他基本类型只是首字母大写即可
练习1:从控制台输入一个数n,生成n个1~25之间的随机整数,添加到集合,并遍历
练习2:自定义4个学生对象,添加到集合,并遍历
Student类省略1.5打印集合方法
以指定格式打印集合的方法:
(ArrayList类型作为参数),使用{}扩起集合,使用@分隔每个元素。格式参照 {元素 @元素@元素}。
1.6获取特殊集合的方法
获取所有偶数元素集合的方法(ArrayList类型作为返回值)
2.String类
2.1概述:
java.lang.String 类代表字符串。Java程序中所有的字符串文字(例如 "abc" )都可以被看作是实现此类的实例。(引用传递一定要耐心的使用内存分析,String类这种类型的数据需要特殊处理)
2.2 String类的特点
1.字符串不变:字符串的值在创建后不能被更改
String s1 ="abc";s1 +="d"; System.out.println(s1); // "abcd"
2.因为String对象是不可变的,所以它们可以被共享
String s1 = "abc"; String s2 = "abc";
3."abc" 等效于 char[] data={ 'a' , 'b' , 'c' }
2.3 String类的使用
构造方法,三大类型2.3 常用方法
2.4.获取功能的方法
public int length () :
public String concat (String str) : public char charAt (int index):public int indexOf (String str): public String substring (int beginIndex) : public String substring (int beginIndex, int endIndex) :
2.5转换功能的方法
2.6分割功能的方法
必须符合正则表达式的规则.
public String[] split(String regex) public String[] split(String regex,int limit) :将此字符串按照给定的regex(规则)拆分为字符串数组。
sd|dh|hfd| <=> 注意: \\| \\+ \\* \\$
2.7拼接字符串
使用引用传递的方法,把数组{2,3,5}按照指定个格式拼接成一个字符:按照 如下规则: [2#3#5]
注意:字符串一旦被声名,将无法再变。练习:
键盘录入一个字符,统计字符串中大小写字母及数字字符个数
3.static关键字
3.1 定义和使用:
static(意思是静态的) 关键字可以用来修饰的成员变量和成员方法,被修饰的成员是属于类的,而不是单单属于某个对象的。顾名思义,既然属于类,就可以不靠创建对象来调用。
3.2 定义和使用格式
类变量
当 static 修饰成员变量时,该变量称为类变量。该类的每个对象都共享同一个类变量的值。任何对象都可以更改 该类变量的值,但也可以在不创建该类的对象的情况下对类变量进行操作。
类变量:使用 static关键字修饰的成员变量
static 数据类型 变量名;
当 static 修饰成员方法时,该方法称为类方法 。静态方法在声明中有 static ,建议使用类名来调用,而不需要 创建类的对象。调用方式非常简单
类方法:使用 static关键字修饰的成员方法,习惯称为静态方法
静态方法可以直接访问类变量和静态方法。 静态方法不能直接访问普通成员变量或成员方法。反之,成员方法可以直接访问类变量或静态方法。 静态方法中,不能使用this关键字。静态方法只能访问静态成员(全局)变量
被static修饰的成员可以并且建议通过类名直接访问。
3.3 static 修饰的内容:
是随着类的加载而加载的,且只加载一次。 存储于一块固定的内存区域(静态区),所以,可以直接被类名调用。 它优先于对象存在,所以,可以被所有对象共享。
3.4 静态代码快
静态代码块:定义在成员位置,使用static修饰的代码块{ }。
位置:类中方法外。
执行:随着类的加载而执行且执行一次,优先于main方法和构造方法的执行。然后才是普通方法。
static 关键字,可以修饰变量、方法和代码块。
与主方法一样,都是静态的,因此在调用方法时可以直接掉用。
3.5 static关键字的应用
给无参对象进行命名操作
网友评论