常用类库

1 篇文章 0 订阅

泛型

泛型即参数化类型,将原来具体的类型参数化,在使用时传入具体的类型。

作用:

1、提高代码复用率

2、泛型的类型在使用的时候指定,无需强制类型装换。(类型安全,编译器会检查类型)

泛型类:

  public class  Test<T>{
    private T data;
    
    public T getData(){
    return data;
    }
    
    public void setData(T data){
    this.data = data
    }
}


泛型接口

public interface IntercaceName<T>{
T getData(); 
}
实现接口时,可以选择指定泛型类型,也可以选择不指定, 如下: 
指定类型: 
public class Interface1 implements IntercaceName<String> {
   private String text;
   @Override
   public String getData() { 
     return text; 
   }
}
不指定类型:
public class Interface1 implements IntercaceName<T> {
   private T data;
   @Override
   public T getData() {
     return data; 
   }
}

泛型方法

private static  <T>  T 方法名(T a,T b){}

泛型限制类型

使用泛型是可以指定泛型的限定区域,

​    如:必须是某个类的子类或者 某个接口的实现类,格式:

<T extends 类或接口1 & 接口2>

泛型中的通配符 ?

类型通配符是使用?代替方法具体的类型实参。
1  指定了泛型类型的上届
2  指定了泛型类型的下届 
3  指定了没有限制的泛型类型

注意

Java中的泛型只在编译阶段有效,不会进入到运行时阶段。

Object类

Object类是一个特殊的类,是所有类的父类,如果一个类没有用extends明确指出继承于某个类,那么它默认继承Object类。这里主要总结Object类中的几个常用方法:toString()、equals()、hashCode()。

1.取得对象信息的方法:toString()

该方法在打印对象时被调用,将对象信息变为字符串返回,默认输出对象地址。

2.对象相等判断方法:equals()

该方法用于比较对象是否相等,而且此方法必须被重写。因为equals()方法比较的是两个对象的地址,

3.对象签名:hashCode()

该方法用来返回其所在对象的物理地址(哈希码值),常会和equals方法同时重写,确保相等的两个对象拥有相等的.hashCode。

Math类

1、Math.floor()

返回小于等于(<=)给定参数的最大整数

2、Math.ceil()

返回大于等于(>=)给定参数的最大整数。

3、Math.round()

表示四舍五入,算法为Math.floor(x+0.5),既将原来的数字加上0.5后再向下取整。

4、Math.rint()

返回最接近给定参数的整数,如果有2个数同样接近,则返回偶数的那个。

5、Math.random()

返回一个随机数,0.0<= Math.random() <1.0,返回值为double值。

Math.sqrt()//计算平方根

*Math.cbrt()//计算立方根

*Math.pow(a, b)//计算a的b次方

*Math.max( , );//计算最大值

*Math.min( , );//计算最小值

*Math.abs();//求绝对值

Arrays 类

Arrays类的sort()方法:对数组进行升序排序

Arrays.sort(数组名);

String toString()方法:将一个数组array转换成一个字符串

void fill()方法:把数组array所有元素都赋值为指定数

copyOf()方法:把数组array复制成一个长度为length的新数组,返回类型与复制的数组一致

int binarySearch()方法:查询元素值在数组中的下标(要求数组中元素已经按升序排列)

boolean equals()方法:比较两个数组是否相等

BigDecimal类

用来对超过16位有效位的数进行精确的运算。双精度浮点型变量double可以处理16位有效数

常用方法
BigDecimal b1 = new BigDecimal("20");
BigDecimal b2 = new BigDecimal("30");


b1.add(b2) :加法,求两个BigDecimal类型数据的和。
b1.subtract(b2):减法,求两个BigDecimal类型数据的差。
b1.multiply(b2):乘法,求两个BigDecimal类型数据的积。
b1.remainder(b2):求余数,求b1除以b2的余数。
b1.max(b2) : 最大数,求两个BigDecimal类型数据的最大值
b1.min(b2) : 最小数,求两个BigDecimal类型数据的最小值。
bi.abs():绝对值,求BigDecimal类型数据的绝对值。
b1.negate():相反数,求BigDecimal类型数据的相反数。

BigDecimal divide(BigDecimal divisor, int scale, int roundingMode)
除法 divide有三个参数的方法,第一参数表示除数,第二个参数表示小数点后保留位数,第三个参数表示取舍规则
最常用的四舍五入应该是 ROUND_HALF_UP

四舍五入

BigDecimal中有一个setScale()方法

第一个参数就是你要保留几位,第二个可填的参数就是取舍规则。

Date类

Date:表示特定的瞬间,精确到毫秒,可以通过方法来设定自己所表示的时间,可以表示任意的时间

System.currentTimeMillis( ):返回的是当前系统时间,1970-1-1至今的毫秒数

构造方法:

Date( ):创建的是一个表示当前系统时间的Date对象

例如:Date d = new Date( );

Date(long date):根据“指定时间”创建Date对象

例如:Date d = new Date(1000 *60 *60);

常用方法:

1.毫秒值—>Date

void setTime(long time)

例如;

Date d = new Date();
d.setTime(1000*60*60);

[注]:1000 *60 *60表示一个小时。1000毫秒等于1秒

2.Date—>毫秒值

long getTime( )

SimpleDateFormat类

作用:对日期时间进行格式化(如:可以将日期转换为指定格式的文本,也可以将文本转换为日期)

format()

将给定的 Date为日期/时间字符串,并将结果附加到给定的 StringBuffer

parse()

解析字符串中的文本以生成Date

Calendar类

Calendar 类是一个抽象类,它为特定瞬间与一组诸如 YEARMONTHDAY_OF_MONTHHOUR日历字段之间的转换提供了一些方法,并为操作日历字段(例如获得下星期的日期)提供了一些方法。

Calemdar类写了静态方法getInstance() 可以直接返回子类的对象,不需要直接new 子类的对象,通过静态方法直接获取。

Calendar类常用方法
getInstance()

CalendargetInstance 方法返回一个 Calendar 对象,其日历字段已由当前日期和时间初始化:

get()

Calendar类的get方法,用于获取日历字段的值,返回值的结果也是个int类型的值。

set()

将给定的日历字段设置为给定值。

add()

日历的偏移量,可以指定一个日历中的字段,进行整数的偏移。

getTime()

把日历对象转换成Date日期对象。

String 类

1、int length();  语法:字符串变量名.length();  返回值为 int 类型。得到一个字符串的字符个数(中、英、空格、转义字符皆为字符,计入长度)

2、char charAt(值);  语法 :字符串名.charAt(值);  返回值为 char 类型。从字符串中取出指定位置的字符

3、char toCharArray();  语法 :字符串名.toCharArray();  返回值为 char 数组类型。将字符串变成一个字符数组

4、int indexOf(“字符”)  语法 :字符串名.indexOf(“字符”);字符串名.indexOf(“字符”,值);查找一个指定的字符串是否存在,返回的是字符串的位置,如果不存在,则返回-1 。

in lastIndexOf(“字符”) 得到指定内容最后一次出现的下标

5、toUpperCase(); toLowerCase();字符串大小写的转换

6、String[] split(“字符”)  根据给定的正则表达式的匹配来拆分此字符串。形成一个新的String数组。

7、boolean equals(Object anObject)  语法 :字符串变量名.wquals(字符串变量名);  返回值为布尔类型。

8、trim();  去掉字符串左右空格  **replace(char oldChar,char newChar);**新字符替换旧字符,也可以达到去空格的效果一种

9、String substring(int beginIndex,int endIndex)  截取字符串

10、boolean equalsIgnoreCase(String) 忽略大小写的比较两个字符串的值是否一模一样,返回一个布尔值

11、boolean contains(String) 判断一个字符串里面是否包含指定的内容,返回一个布尔值

12、boolean startsWith(String)  测试此字符串是否以指定的前缀开始。返回一个布尔值

13、boolean endsWith()  测试此字符串是否以指定的后缀结束。返回一个布尔值

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值