正则表达式&&重写toString和equals&&包装类
来源:互联网 发布:php报undefined index 编辑:程序博客网 时间:2024/05/21 07:06
一. 正则表达式:
1.描述一种格式,去验证一串字符串看是否满足这个格式
[abc] a、b、c中任意一个字符
<^abc> 除abc之外任意
[a-z] a-z中任意一个
[a-zA-Z0-9] a-zA-Z0-9中任意、
[a-z&&[^bc]] a-z除了bc
. 任意一个字符
任意次(*)
\d 任意一个数字字符[0-9]
\w 单词字符[a-zA-Z0-9_]
\s 空白字符[\t \n\x0B\f\r]
\D 非数字字符
\W 非单词字符
\S 非空白字符
X? 表示0或1个
X* 表示0或任一次
X+ 表示至少一次
X {from,end} 指定多少次
[abc]{0,3} 最多三次
2.(abc|def) 内容是一个整体
3. ^[abc]$ 123123abc123123
^:开始
$:结束\
4.matches()正则表达式匹配
二.split()
* String[] split(string regex)
* 将当前字符串按照满足正则表达式的部分进行拆分
然后将拆分之后的部分返回
String str = "abc123def456ghi789jkl";
String[]str1 = str.split("[0-9]{3}");
for (inti = 0; i < str1.length; i++) {
System.out.println(str1[i]);
}
正则中如果在中间有数字,则会变为空字符串,如果放在末尾之后,就不会继续进行匹配。
图片的重命名:
String imgName = "1.jpg";
String[]str = imgName.split("\\.");
System.out.println(str.length);
str[0] = "b04544e5544";
StringnewImg = System.currentTimeMillis()+"." + str[1];
System.out.println(newImg);
三.replaceAll
将给定的字符串中满足正则表达式的内容替换为给定字符串内容
String str = "abc123def456ghi789jk";
Strings = str.replaceAll("\\d+", "#NUMBER#");
System.out.println(s);
四.Object
耦合:调用者和被调用者的依赖程度
面向接口编程,不是从人的角度去看,是从职业的角度去看
为什么要继承自Object()?
五.toString
一般意义上来说toString在Object中并没有实际意义,所以在类中经常会重写
//通常需要使用一个类的toString方法时
//重写toString
//该方法返回一个字符串,该字符串没有具体格式要求
//但是原则上应当包含当前对象的属性信息
//若不重写该方法,使用Object提供的,原始方法中返回类名@地址
//通常没意义.
六.equals
// 当我们使用一个类的equals方法做比较时,该类就应当重写这个方法,因为Object
// 提供的equals没有实际意义
//equals是用来比较两个内容是否一致。所以比较的是两个对象的属性内容,但是不一定要求属性必须完全一致,
//这样看实际开发来定
双等于不是恒等成立的,重建新的对象之后就false
但是equals即使是不同的对象,比较只比较里面的结果
七.Integer&&BigDecimal
包装类是不可变类,
charèCharacter
//包装类
// 由于基本类型没有面向对象的特性,所以不能直接参与面向对象的开发,为了解决这个问题,java为8歌基本类型提供了包装类
//包装类可以以对象的形式表示一个基本类型的值
// 其中六个数字类型的包装类继承自Number
//number定义了数字类型包装类的共同行为
//允许将其表示的基本类型数据在不同的数字类型直接互相转换
Integer i = Integer.valueOf(123);
Integerj = Integer.valueOf(123);
System.out.println(i ==j);
Integer的valueOf 相对于newInteger() 不用创建一个新对象,类似于缓存常量池,但是只缓存一个字节-128-127
//所有包装类支持静态方法valueOf,可以将对应的基本类型转换为包装类。推荐使用而不是直接new。
Integer i = Integer.valueOf(123);
Integerj = Integer.valueOf(123);
System.out.println(i ==j);
int in =i.intValue();
可以互转
//所有的包装类都提供了一个静态方法:parsexxx()
//该方法可以将给定的字符串转换为对应的基本类型
//数字,但是前提是该字符串的内容必须能正确描述该基本类型可以保存的数据,否则会抛出异常
String str = JOptionPane.showInputDialog("输入");
inti = Integer.parseInt(str);
System.out.println(i+2);
Java4之后进行了自动拆装箱
Integer i = Integer.valueOf(123);==Integeri=123;
即:基本类型和引用类型之间可以直接互相赋值,无需关注之间的转换,而编译器在编译源程序时会自动补充代码完成他们之间的转换工作,所以自动拆装箱是编译器认可,而不是虚拟机认可。
- 正则表达式&&重写toString和equals&&包装类
- 重写equals和 toString方法
- 包装类和正则表达式
- 实体类自动重写toString(),equals()和hashCode()方法
- java equals() 和toString()方法重写
- 重写toString()和equals()方法(algs4)
- 重写 toString() & equals() 方法
- 包装类 正则表达式
- Object类toString方法重写,equals方法重写
- 40_面向对象_13_继承_Object类用法_toString和equals方法_重写toString
- Java:object类 中常用equals()和 toString()方法的重写
- 重写Object的toString()和equals()之精细详解
- 重写toString以及equals方法
- equals、hashCode、toString 方法重写
- 包装类转化、正则表达式
- 正则表达式 、 Object 、 包装类
- 正则表达式、Object、包装类
- 关于正则表达式和包装类(Java)
- treeSet剖析
- 随机数函数应用于游戏(2)
- onpropertychange、oninput监听input输入框值实时变化
- 快速排序的经典实现与分析
- Java关键字之private、default、protected、public
- 正则表达式&&重写toString和equals&&包装类
- Matlab问答day7
- Java 多线程
- 程序分析1
- 如何将不同类型数据导入Elaticsearch中?
- LeetCode(371) Sum of Two Integers
- Android动画使用详解
- POJ 2635 The Embarrassed Cryptographer
- 程序分析2