ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

java常用类库(1)

2021-06-06 21:04:17  阅读:144  来源: 互联网

标签:类库 常用 java int System print 泛型 Calendar out


一.泛型

1.泛型的概念:就是将类型由原来的具体的类型参数化,这样可以提高代码的复用性和灵活性。

2.泛型可以用在那里:(1)类  (2)接口   (3)方法

3.格式:<T>(里面的字母任意)

4.示例:

1)用在类中

1 public class className<T>{
2       private T data;
3       public className(){};
4       public className(T data){
5           this.data = data;
6        }
7 }

2)  用在接口中

public interface interfaceName<T>{
     T show();
T show2(); }

实现泛型的时候可以考虑是否指定泛型:
1)指定泛型:
public class className implements interfaceName<String>{
private String name;
}

2)不指定泛型
public class className<T> implements interfaceName<T>{
private T data;
}

3) 用在方法中

public static <T> void show(){
      System.out.print("方法中的泛型跟在权限修饰符之后");
}

 

5.泛型限定和通配符

1)在使用泛型时, 可以指定泛型的限定区域

例如:必须是某某类的子类或 某某接口的实现类

<T extends 类或者接口> (采用extends关键字)

2)通配符:

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

 

二:Object类:

1.object类是所有类的超类,所有的类都继承自Object类。

2.Object中有很多方法:

1)checkFromIndexSize​(int fromIndex, int size, int length);判断范围是否越界(fromindex子范围的下线,size范围,length范围的上线)

2)checkIndex(int index,length);检查下表index是否在0-length范围内

3)equals(Object a,Object b);比较a和b,通常要重写

4)CompareTo(T a,T b)通常要重写

5)hashCode(Object a);返回哈希值

6)isNull();判断是否为空

7)toString();打印,通常要重写

三:Math类:

1.math类有很多关于算术运算的方法,当我们遇见一些算术问题,首先想到的因该是查找API文档

2.常见的运算方法:

1)Math.abs(参数);返回绝对值

2)Math.ceil(参数);返回大于或等于参数且等于数学整数的最小值

3)  Math.max(a,b);

4)  Math.min(a,n);

5)  Math.round(a);四舍五入

6) Math.floor(a);返回小于或等于参数且等于数学整数的最小值

 

四:Arrays类:

1.arrays类提供了很多操作数组的方法。

2.常用方法:

1)Arrays.toString(a[]);打印出数组的值

2)Arrays.sort(a[]);对数组排序

3)  Arrays.binarySearch(a[],key);打印特定下标的数据

4)arr = Arrays.copyOf(arr,arr.length*2);数组扩容

 

 

 

五:BigDecimal类

1.作用:由于小数的运算精度会出现误差,采用该类来解决

2.使用方式:

//创建对象
BigDecimal b1 = new BigDecimal("0.2");
BigDecimal b2 = new BigDecimal("0.1");
//加法运算
BigDecimal b3 = b1.add(b2);
System.out.print(b3);

/*
1.add();加法
2.subtruct();减法
3.multiply();乘法
4.devide();除法
*/

六:Data类:

1.该类很多方法都被弃用。

2.构造方法:

1.无参构造:
//创建一个当前时间对象 Data data = new Data();

System.out.print(data.toString());//打印出当前的时间

System.out.print(data.getTime());//获取当前的毫秒值

 

七:DateFormat类:

1.dateFormat类是抽象类,在使用是要使用他的实现类simpleDateFormat

2.dateFormat是日期格式类

3.如何使用,以及常用的方法

//创建日期格式化对象
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd  HH:mm  ss");
//1.format()方法,将日期转化为我们定义的格式
String date = sdf.format(new date());
System.out.print(date);


//2.parse()方法,将yyyy-MM-dd  HH:mm  ss转换为日期对象
Date date = sdf.parse("2021-02-03  12:12  12");
//转换为日期类可以进行相应的计算,例如:
System.out.print(((new Date()).getTime - date.getTime())/1000/60/60/24);

八:Calendar日历类

1.calendar是一个抽象类,它里面提供了getInstance()方法来创建按对象

2.通过设置和获取来操作时间

//创建Calendar对象
Calendar cl = Calendar.getInstance();
//设置时间
cl.set(Calendar.YEAR,2021);
//获取时间
int year = cl.get(Calendar.YEAR);
System.out.print(year);//结果为2021年,如果不设置,则为系统默认时间
//还可以用于计算这是一年的第几天这类问题
int day = cl.get(Calendar.WEEK_OF_YEAR);
System.out.print(day);//一年的第几天

 

3.Calendar类的计算:

 1 //创建当前日期对象
 2 Calendar cl = Calendar.getInstance();
 3 //对当前日期对象的年加一
 4 //1.add()加法
 5 int year = cl.add(Calendar.YEAR,1);
 6 System.out.print(year);
7 //2.getTime()方法,获取日历时间表示的Date对象 8 Date date = cl.getTime();
9 //3.getActuralMaxmum();获取最大值 10 int day = cl.getActuralMaxmum(Calendar.DAT_OF_MONTH); 11 System.out.print(dat);//获取月份中最大的天数

 

 

九:System类

1.该类提供了标准的输入流(in)输出流(out)以及标准错误流(err).

2.该类中一些常见的方法:

1)

arraycopy​(Object src, int srcPos, Object dest, int destPos, int length) 将指定源数组中的数组从指定位置开始复制到目标数组的指定位置。 

   (src - 源数组,srcPos - 源数组中的起始位置,dest - 目标数组,destPos - 目标数据中的起始位置,length - 要复制的数组元素的数量)

2)gc();运行垃圾回收器

3)exit();中止当前Java虚拟机  0表示正常中止,非0表示非正常中止

 

十:String类

1.String 表示字符串,字符串是不可以更改的,当两个对象的字符串数组一样时,他们共享一个内存空间

例如:String text1 = "123";

           String text2 = "123";

           System.out.print(text1==text2);  // ==号比较的是内存的地址,结果为true

如果是String text2 = new String("123");这时开创了新的内存空间,结果为false

2.字符串常量池:

1)堆在结构上分为三种:

       新生代:经常被GC垃圾回收器访问

       老年代:被垃圾回收器GC访问的次数少于15次

       永久代:从不被垃圾回收器GC访问

3.字符串拼接:

 

 字符串拼接很浪费空间,一般都不采用+的方式来拼接字符串。采用StringBuffer(线程安全)或者StringBuilder(线程不安全)来实现

例如:StringBuilder sb = new StringBuilder();

           sb.append("1");

           sb.append("2");

           sb.append("3");

           String text =  sb.toString();  //该方法可以将StringBuilder类型转换为String类型。

           System.out.print(text);  //123

 

标签:类库,常用,java,int,System,print,泛型,Calendar,out
来源: https://www.cnblogs.com/baiyangshu/p/14856360.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有