重温java从入门到精通(第2版)-3

重温java从入门到精通(第2版)- 3

  1. String类中关于正则的几个方法
    public boolean matches(String regex)
    将字符串与给出的正则进行匹配
    public String replaceAll(String regex, String replacement)
    按照指定的正则全部替换
    public String replaceFirst(String regex, String replacement)
    按照指定的正则替换首个
    public String[] split(String regex)
    按照指定的正则拆分
    public String[] split(String regex,int limit)
    拆分为指定长度的字符串数组
  2. (1) 字符,表示单个字符,只能出现1位。
    x:表示是一个指定的一位字符,例如:编写一个a,表示是字母a;
    \:表示一位字符“\”,但是由于“\”有个数含义,所以使用“\”表示一位“\”;
    \n:匹配换行;
    (2) 字符范围,在指定的字符范围之中选1位,只能出现1位。
    [abc]:表示可以是a、b、c中的任意一位;[^abc]:表示不是a、b、c中的任意一位;
    [a-zA-Z]:表示是任意一位字母(大写或小写);
    [0-9]:表示是任意一位数字。
    (3) 简洁表达式,表示1位。
    .:表示任意的一位字符;
    \d:表示一位数字,等价于“[0-9]”;
    \D:表示一位非数字,等价于“[^0-9]”;
    \s:表示一位空格,等价于“[ \t\n\x0B\f\r]”;\S:表示一位非空格,等价于“[…… \t\n\x0B\f\r]”;
    \w:表示一位字母、数字、,等价于“[a-zA-Z0-9]”;
    \W:表示一位非字母、数字、,等价于“[^a-zA-Z0-9]”;
    (4) 边界匹配,Java用不上。
    ^:表示正则的开头;
    $:表示正则的结尾。
    (5) 数量表示,之前的正则每个符号只表示一位,如果要表示多位,则必须使用以下的数量关系。
    正则?:表示此正则可以出现0次或1次;
    正则+:表示此正则可以出现1次或多次;
    正则*:表示此正则可以出现0次、1次或多次;
    正则{n}:表示此正则出现正好n次;
    正则{n,}:表示此正则出现n次以上;
    正则{n,m}:表示此正则出现n ~ m次。
    (6) 逻辑操作。
    正则1正则2:正则1之后紧跟正则2操作;
    正则1|正则2:表示或的关系,有一套正则标记匹配即可;
    (正则):表示按照一组来使用。
  3. Integer类的三种创建方法
    利用new关键字新建一个Integer对象并实例化。
    利用Integer类中的valueOf创建Integer对象。
    直接将一个int类型的整数赋给Integer对象,利用java的自动装箱进行类型的转化
  4. 如果要想取得Class类的实例化对象在Java之中有三种方式。
    方式一:利用Object类的getClass()方法,但是要求必须先产生指定类的对象才可以,几乎不用。
class<?> cls = obj.getClass();

方式二:利用“类.class”的形式取得Class类的对象,在Hibernate上使用。

Class<?> cls = java.util.Date.Class;

方式三:利用Class类提供的一个方法完成,在系统架构中使用:

Class<?> cls = Class.forName("java.util.Date")

想实例化对象可以有两种形式,一种是通过关键字new,另外一种是通过反射机制完成。

Book book = (Book)cls.newInstance();

如果对象只有有参构造方法,那么首先要反射取得构造器

Constructor<?> cons = 	cls.getConstructor(String.class,String.class);

然后根据构造器来构造对象

Book book = (Book) cons.newInstance("python程序设计 ", "60");

很明显,此时类之中还是提供无参构造方法会更加方便一些,这一点就是在简单Java类之中要求提供无参构造的关键因素。
5. 类成员的访问控制权限.
(1) private访问控制符在前面已经介绍了private访问控制符的作用,如果一个成员方法或成员变量名的前面使用了private访问控制符,那么这个成员只能在这个类的内部使用.
(2) default默认访问控制符如果一个成员方法或成员变量名前面没有使用任何访问控制符,就称这个成员所拥有的是默认的(default)访问控制符。默认的访问控制成员可以被这个包中的其他类访问。如果一个子类与其父类位于不同的包中,子类也不能访问父类中的默认访问控制成员。
(3) protected访问控制符如果一个成员方法或成员变量名前面使用了protected访问控制符,那么这个成员既可以被同一个包中的其他类访问,也可以被不同包中的子类访问
(4) public访问控制符如果一个成员方法或成员变量名前面使用了public访问控制符,那么这个成员可以被所有的类访问,不管访问类与被访问类是否在同一个包中。

privatedefaultprotectedpublic
同一类
同一包中的类
不同包中的子类
其他包中的类
  1. 父类接口Collection提供的方法
方法描述
boolean add(Object obj)将obj加入到调用类集中,如果成功则返回true
boolean addAll(Collection c)将c中的所有元素加入到类集中,成功返回true
void clear()从调用类集中删除所有元素
boolean contains(Object obj)如果obj是调用类集的一个元素则返回true
boolean containsAll(Collection c)如果调用类集包含所有c的元素则返回true
boolean equals(Object obj)如果调用类集与Obj相等则返回true
int hashCode()返回调用类集的hash值
boolean isEmpty()调用类为空则返回true
Iterator iterator()调用类集的迭代器
boolean remove(Object obj)从调用类集中删除obj实例,如果删除了则返回true
boolean removeAll(Collection c)从调用类集中删除c的所有元素,如果有删除则返回true
boolean retainAll(Collection c)从调用类集中删除除了c包含元素之外的元素,如果改变了返回true
int size()返回调用类集中元素个数
Object[] toArray()返回一个数组,该数组包含了所有存储在调用类集中的元素
  1. List接口
方法描述
void add(int index,Object obj)将obj插入列表,插入位置的下标由index传递,插入点及之后的元素将后移
boolean addAll(int index,Collection c)将c中的所有元素插入列表中,插入下标由index传递,如果列表改变了则返回true
Object get(int index)返回存储在调用类集指定下标的元素
int indexOf(Object obj)返回obj第一次出现的下标,如果没有则返回-1
int lastIndexOf(Object obj)返回obj最后一次出现的下标,如果没有则返回-1
ListIterator listIterator()返回类集的迭代器
ListIterator listIterator(int index)返回调用列表在指定下标处开始的迭代器
Object remove(int index)删除index处的元素
Object set(int index,Object obj)用obj对调用列表内index位置进行赋值
List subList(int start,int end)返回一个列表,包含从start到end-1的元素
  1. Map接口
方法描述
void clear()删除所有的键值对
boolean containsKey(Object k)如果包含键k则返回true
boolean containsValue(Object v)如果包含值v则返回true
Set<Map.Entry<Key,Value>> entrySet()将map集合变为set集合返回
boolean equals(Object obj)如果obj为map并包含相同的输入则为true
Object get(Object k)返回键k对应的v值
set keySet()返回k的集合
Object put(Object key,Object value)加入映射
void putAll(Map m)将来自m的映射加入
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值