黑马程序员——Java编程语言学习总结– API(下)
来源:互联网 发布:中日韩 餐具知乎 编辑:程序博客网 时间:2024/05/16 12:46
------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------
(一)API 常用类
Object类/Scanner类
String类/StringBuffer类/StringBuilder类
数组高级和Arrays类
基本类型包装类(Integer,Character)
正则表达式(Pattern,Matcher)
Math类/Random类/System类
BigInteger类/BigDecimal类
Date类/DateFormat类/Calendar类
(二)正则表达式(Pattern,Matcher)
1. 分割功能
String类的public String[] split(String regex)
根据给定正则表达式的匹配拆分此字符串。
2. 替换功能
String类的public String replaceAll(String regex,String replacement)
使用给定的 replacement 替换此字符串所有匹配给定的正则表达式的子字符串。
3. 获取功能
Pattern和Matcher类的使用
模式和匹配器的基本使用顺序
// 模式和匹配器的典型调用顺序
//把正则表达式编译成模式对象
Patternp = Pattern.compile("ab");
//通过模式对象得到匹配器对象,这个时候需要的是被匹配的字符串
Matcherm = p.matcher("aaaaab");
//调用匹配器对象的功能
booleanb = m.matches();
System.out.println(b);
// 定义字符串
Strings = "da jia ting wo shuo,jin tian yao xia yu,bu shang wan zi xi,gao xingbu?";
//规则
Stringregex = "\\b\\w{3}\\b";
//把规则编译成模式对象
Patternp = Pattern.compile(regex);
//通过模式对象得到匹配器对象
Matcherm = p.matcher(s);
//调用匹配器对象的功能
//通过find方法就是查找有没有满足条件的子串
//public boolean find()
//boolean flag = m.find();
//System.out.println(flag);
//// 如何得到值呢?
//// public String group()
//String ss = m.group();
//System.out.println(ss);
A:字符
x字符 x。举例:'a'表示字符a
\\反斜线字符。
\n新行(换行)符 ('\u000A')
\r回车符 ('\u000D')
B:字符类
[abc]a、b 或 c(简单类)
[^abc]任何字符,除了 a、b 或 c(否定)
[a-zA-Z]a到 z 或 A到 Z,两头的字母包括在内(范围)
[0-9]0到9的字符都包括
C:预定义字符类
.任何字符。我的就是.字符本身,怎么表示呢? \.
\d数字:[0-9]
\w单词字符:[a-zA-Z_0-9]
在正则表达式里面组成单词的东西必须有这些东西组成
D:边界匹配器
^行的开头
$行的结尾
\b单词边界
就是不是单词字符的地方。
举例:hello world?haha;xixi
E:Greedy 数量词
X?X,一次或一次也没有
XX,零次或多次
X+X,一次或多次
X{n}X,恰好 n 次
X{n,}X,至少 n 次
X{n,m}X,至少 n 次,但是不超过 m 次
(三)Random类:产生随机数的类
1. 构造方法:
public Random():没有给种子,用的是默认种子,是当前时间的毫秒值
public Random(long seed):给出指定的种子
给定种子后,每次得到的随机数是相同的。
2. 成员方法:
public int nextInt():返回的是int范围内的随机数
public int nextInt(int n):返回的是[0,n)范围的内随机数
(四)Math类
用于数学运算的类。
1. 成员变量:
public static final double PI
public static final double E
2. 成员方法:
public static int abs(int a):绝对值
public static double ceil(double a):向上取整
public static double floor(double a):向下取整
public static int max(int a,int b):最大值 (min自学)
public static double pow(doublea,double b):a的b次幂
public static double random():随机数 [0.0,1.0)
public static int round(float a) 四舍五入(参数为double的自学)
public static double sqrt(double a):正平方根
(五) System类
包含一些有用的类字段和方法。它不能被实例化。
1. System的主要方法:
public static void gc():运行垃圾回收器。
public static void exit(int status):终止当前正在运行的 Java 虚拟机。参数用作状态码;根据惯例,非 0 的状态码表示异常终止。
public static longcurrentTimeMillis():返回以毫秒为单位的当前时间
public static void arraycopy(Objectsrc,int srcPos,Object dest,int destPos,int length)
从指定源数组中复制一个数组,复制从指定的位置开始,到目标数组的指定位置结束。 /
(六)Date类
表示特定的瞬间,精确到毫秒。
1. 构造方法:
Date():根据当前的默认毫秒值创建日期对象
Date(long date):根据给定的毫秒值创建日期对象
public long getTime():获取时间,以毫秒为单位
public void setTime(long time):设置时间
从Date得到一个毫秒值
getTime()
把一个毫秒值转换为Date
构造方法
setTime(long time)
Date -- String(格式化)
public final String format(Date date)
String -- Date(解析)
public Date parse(String source)
DateForamt:可以进行日期和字符串的格式化和解析,但是由于是抽象类,所以使用具体子类SimpleDateFormat。
2. SimpleDateFormat的构造方法:
SimpleDateFormat():默认模式
SimpleDateFormat(String pattern):给定的模式
这个模式字符串该如何写呢?
通过查看API,我们就找到了对应的模式
年 y
月 M
日 d
时 H
分 m
秒 s
(七)Calendar类
它为特定瞬间与一组诸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等 日历字段之间的转换提供了一些方法,并为操作日历字段(例如获得下星期的日期)提供了一些方法。
public int get(int field):返回给定日历字段的值。日历类中的每个日历字段都是静态的成员变量,并且是int类型。
CalendarrightNow = Calendar.getInstance(); // 子类对象
//获取年
intyear = rightNow.get(Calendar.YEAR);
//获取月
intmonth = rightNow.get(Calendar.MONTH);
//获取日
intdate = rightNow.get(Calendar.DATE);
System.out.println(year+ "年" +(month + 1) + "月" + date + "日");
public void add(int field,int amount):根据给定的日历字段和对应的时间,来对当前的日历进行操作。
public final void set(int year,intmonth,int date):设置当前日历的年月日
(八)BigDecimal类
不可变的、任意精度的有符号十进制数,可以解决数据丢失问题。
看程序写结果:结果和我们想的有一点点不一样,这是因为float类型的数据存储和整数不一样导致的。它们大部分的时候,都是带有有效数字位。
由于在运算的时候,float类型和double很容易丢失精度,演示案例。所以,为了能精确的表示、计算浮点数,Java提供了BigDecimal
System.out.println(0.09 + 0.01);
System.out.println(1.0- 0.32);
System.out.println(1.015 100);
System.out.println(1.301/ 100);
System.out.println(1.0 - 0.12);
1. 构造方法:
public BigDecimal(String val)
2. 常用方法
public BigDecimal add(BigDecimal augend)
public BigDecimal subtract(BigDecimal subtrahend)
public BigDecimal multiply(BigDecimal multiplicand)
public BigDecimal divide(BigDecimal divisor)
public BigDecimal divide(BigDecimal divisor,int scale,int roundingMode):商,几位小数,如何舍取
(九)BigInteger
可以让超过Integer范围内的数据进行运算
1. 构造方法:
BigInteger(String val)
2. 常用方法
public BigInteger add(BigInteger val):加
public BigInteger subtract(BigInteger val):减
public BigInteger multiply(BigInteger val):乘
public BigInteger divide(BigInteger val):除
public BigInteger[] divideAndRemainder(BigInteger val):返回商和余数的数组
- 黑马程序员——Java编程语言学习总结– API(下)
- 黑马程序员——Java编程语言学习总结 – API(上)
- 黑马程序员——Java编程语言学习总结 – 面向对象(下)
- 黑马程序员—— Java编程语言学习总结--概述
- 黑马程序员——Java编程语言学习总结 – 网络编程
- 黑马程序员——Java编程语言学习总结 – 循环与选择性语句
- 黑马程序员——Java编程语言学习总结– 函数与数组
- 黑马程序员——Java编程语言学习总结– 面向对象(上)
- 黑马程序员——Java编程语言学习总结 – Collection集合框架
- 黑马程序员——Java编程语言学习总结 –Map集合
- 黑马程序员——Java编程语言学习总结 –异常与File类
- 黑马程序员——Java编程语言学习总结 – IO流
- 黑马程序员——Java编程语言学习总结 – 多线程
- 黑马程序员——Java编程语言学习总结 – 反射与设计模式
- 黑马程序员——Java学习总结:Java编程基础
- 黑马程序员——Java面向对象编程学习总结
- 黑马程序员-Java网络编程学习总结
- 黑马程序员---java网络编程学习总结
- 操作字符串中的数字序列
- 88-NSThread的使用
- 谓词
- 苹果推送APNS自己总结
- 卢筷膘指诼甯宽偈为踢讪茛咻被朴圪纺谅狄溢
- 黑马程序员——Java编程语言学习总结– API(下)
- 艳廖蒇阏慊郊谨抨丘贾墨庀爬蔽偕嗡嚏烬蛛削蕙哗
- 89-知识点补充,block循环引用,appearance用法,UISegmentedControl 用法
- 图片加载由模糊变清晰-图片优化
- POJ 1691 Painting A Board
- 黑马程序员——Java基础知识——数组
- Hadoop集群搭建之二(测试hadoop集群)
- 显示行号及配置文件Vimrc
- Linux根文件系统