1.Map

  • Map是集合容器,存放的元素有键与值两部分组成,通过键可以找到所对应的值,键和值必须是引用数据类型,键是唯一的,不能重复,没有顺序。
  • HashMap是Map的实现类.
  • Map的添加,删除,查询
//创建Map对象
Map<String, String> map = new HashMa p<String,String>();
//给map中添加元素
map.put("1", "Monday");
map.put("7", "Sunday");
System.out.println(map);
//当给Map中添加元素,会返回key对应的原来的 value值,若key没有对应的值,返回null System.out.println(map.put("1", "Mo n")); // Monday
System.out.println(map); // {星期日=Su nday, 星期一=Mon} 根据指定的key获取对应的value
String en = map.get("1");
System.out.println(en); // Sunday 根据key删除元素,会返回key对应的value值
String value = map.remove("1");
System.out.println(value); // Sunday
System.out.println(map); // {1=Mon}
  • Map的遍历
Map<String, String> map = new HashMa p<String,String>();
//给map中添加元素
map.put("邓超", "孙俪");
map.put("李晨", "范冰冰");
map.put("刘德华", "柳岩"); //获取Map中的所有key
Set<String> keySet = map.keySe t();
for(String key : keySet){
System.out.println(map.get(ke y))
}

Calender

/*
public abstract class Calendar extends Object implements Serializable, Cloneable, Comparable<Calendar> 抽象类
*/
    //创建对象  
Calendar calendar = Calendar.getInstance(); //get(int filed)
//获取年月日 时分秒信息
int year = calendar.get(Calendar.YEAR);
int month = calendar.get(Calendar.MONTH)+1;//从0开始算起,最大11;0代表1月,11代表12月
     int date = calendar.get(Calendar.DATE);
     int hour = calendar.get(Calendar.HOUR);
        int minute = calendar.get(Calendar.MINUTE);
int second = calendar.get(Calendar.SECOND);
System.out.println(year+"年"+month+"月"+date+"日 "+hour+":"+minute+":"+second); //2020年7月1日 11:14:46

     //指定字段增加值
     Calendar c = Calendar.getInstance();
     //修改当前时间为3天后
     c.add(Calendar.DATE, 3);
     //修改当前时间为5小时后
     c.add(Calendar.HOUR, 5);
     //转换日期类型
Date time = calendar.getTime();
System.out.println(time); // Wed Jul 01 11:16:10 CST 2020 //设置时间为2020年5月7日
calendar.set(Calendar.YEAR, 2020);
calendar.set(Calendar.MONTH, 5);
calendar.set(Calendar.DATE, 7);
int year2 = calendar.get(Calendar.YEAR);
int month2= calendar.get(Calendar.MONTH);
int date2 = calendar.get(Calendar.DATE);
System.out.println(year2+"年"+month2+"月"+date2+"日");//2020年5月7日
      //使用日历计算平年闰年更为方便
      Calendar c = Calendar.getInstance();
      c.set(2000, 2, 1);
      c.add(Calendar.DATE, -1);
      int a = c.get(Calendar.DATE);
      System.out.println(a);
 
 
 
 
 
 

  

Date

构造函数  :public Date()

分配一个 Date对象并对其进行初始化,以便它表示分配的时间,测量到最近的毫秒。System.currentTimeMillis();
Date date1 = new Date();
System.out.println(date1);//当前日期
Date date2 = new Date(12354356000000L);
System.out.println(date2);//指定日期
  //日期和毫秒的转换

  Date date = new Date();

  long time = date.getTime();

  System.out.println(time);//1499169262875

  

DateFormat

  格式化日期类,通常用于日期和String的转换
Date date2 = new Date(); //DateFormat抽象类,SimpleDateFormat是DateF ormat实现类
DateFormat df = new SimpleDateFormat("yyy y-MM-dd E HH:mm:ss a");
String str = df.format(date2);
System.out.println(str);//2017-07-04 星期 二 20:04:43 下午
  日期字符串之间的抓换
Date date = new Date(12354356000000L);
DateFormat df = new SimpleDateFormat(“yyy y年MM月dd日”);
String str = df.format(date);
String str = ”2020年12月11日”;
DateFormat df = new SimpleDateFormat(“yyy y年MM月dd日”);
Date date = df.parse(str);

System

    public static void main(String[] args) {
// 获取当前时间的毫秒值
System.currentTimeMillis();
 // 结束当前程序
System.exit(0);
   // 数组的拷贝 System.currentTimeMillis();//取当前系统时间与1970年01月01日00:00点 之间的毫秒差值
System.exit(0);//结束程序,通常传入0记为正常状 态,其他为异常状态
int[] src = new int[]{1,2,3,4,5};
int[] dest = new int[]{6,7,8,9,10}; //源数组,源数组的起始位置,目标数组,目标数组的起 始位置,目标数组的长度
System.arraycopy( src, 0, dest, 0, 3); //src数组元素[1,2,3,4,5] //dest数组元素[1,2,3,9,10]
}

 

Math

  • abs方法,结果都为正数
  • double d1 = Math.abs(-5); // d1的值为5
    double d2 = Math.abs(5); // d2的值为5

      

  • ceil方法,结果为比参数值大的最小整数的double值
  • double d1 = Math.ceil(3.3); //d1的值为 4.0
    double d2 = Math.ceil(-3.3); //d2的值为 -3.0
    double d3 = Math.ceil(5.1); // d3的值为 6.0
  • floor方法,结果为比参数值小的最大整数的double值
  • double d1 = Math.floor(3.3); //d1的值为3.0
    double d2 = Math.floor(-3.3); //d2的值 为-4.0
    double d3 = Math.floor(5.1); //d3的值为 5.0
  • max方法,返回两个参数值中较大的值
  • double d1 = Math.max(3.3, 5.5); //d1的值为 5.5
    double d2 = Math.max(-3.3, -5.5); //d2的 值为-3.3
  • min方法,返回两个参数值中较小的值
  • double d1 = Math.min(3.3, 5.5); //d1的值为 3.3
    double d2 = Math.max(-3.3, -5.5); //d2的 值为-5.5
  • pow方法,返回第一个参数的第二个参数次幂的值
  • double d1 = Math.pow(2.0, 3.0); //d1的值为 8.0
    double d2 = Math.pow(3.0, 3.0); //d2的值为 27.0
  • round方法,返回参数值四舍五入的结果
  • double d1 = Math.round(5.5); //d1的值为6.0
    double d2 = Math.round(5.4); //d2的值为5.0
  • random方法,产生一个大于等于0.0且小于1.0的double小数
  • double d1 = Math.random();
    //得到的 是[0,1)的小数
    //锁定范围获取 a-b整数
    int a = (int)(Math.random()*(b-a+1))+a

     

包装类

  包装类的作用实现基本数据类型和字符串之间的转换字符串,基本数据类型,
  包装类型转换字符串转换基本数据类型需要调用包装类 包装类.parse基本数据类型("字符串");
  int a = Integer.parseInt("12");
 
  基本数据类型转换字符串 String str = ""+基本数据类型;
  或者 String str =String.valueOf(34);
  基本数据类型转换包装类型: Integer obj =Interger.valueOf(3);
  包装类型转换基本数据类型: int a =obj.intValue();
  jdk1.5以后系统提供自动装箱:int和integer可以自动转换
 
 

大数据运算

BigInteger

大数据整数的加,减,乘,除

//大数据封装为BigInteger对象
BigInteger big1 = new BigInteger("12345 678909876543210");
BigInteger big2 = new BigInteger("98765 432101234567890"); //add实现加法运算
BigInteger bigAdd = big1.add(big2); System.out.println(bigAdd); //subtract实现减法运算
BigInteger bigSub = big1.subtract(big 2); System.out.println(bigSub); //multiply实现乘法运算 BigInteger bigMul = big1.multiply(big 2);System.out.println(bigMul); //divide实现除法运算 BigInteger bigDiv = big2.divide(big1); System.out.println(bigDiv);

BigDecimal

有些时候操作小数的,会出现精度问题如

System.out.println(0.09+0.01);//0.0999999 9999999999 
System.out.println(1.201*100);//120.10000 000000001
//大数据封装为BigDecimal对象
BigDecimal big1 = new BigDecimal("0.09");
BigDecimal big2 = new BigDecimal("0.01"); //add实现加法运算
BigDecimal bigAdd = big1.add(big2); System.out.println(bigAdd );
BigDecimal big3 = new BigDecimal("1.0");
BigDecimal big4 = new BigDecimal("0.32"); //subtract实现减法运算
BigDecimal bigSub = big3.subtract(big4);
System.out.println(bigSub);
BigDecimal big5 = new BigDecimal("1.10 5");
BigDecimal big6 = new BigDecimal("100"); //multiply实现乘法运算
BigDecimal bigMul = big5.multiply(big6); System.out.println(bigMul); //divide实现除法
BigDecimal bigDiv = big5.divide(big6,2,Bi gDecimal.ROUND_UP);

 

Arrays

使用二分查找搜索指定int类型数组
int[] arr = {1,3,4,5,6};
int index = Arrays.binarySearch(arr, 4); //index的值为2
int index2= Arrasy.binarySearch(arr, 2); //index2的值为-1
数组升序排序
int[] arr = {1,5,9,3,7};
Arrays.sort( arr );
将数组的内容以字符串形式呈现
int[] arr = {1,5,9,3,7}; String str = Arrays.toString(arr); // str 的值为[1, 3, 5, 7, 9]

  

异常

  如果产生异常的地方没有对他处理,那么会向上抛出,抛向调用者,如果调用者没有对异常作出处理,会给jvm处理,jvm会找到自己内部能不能识别到该异常信息对应的类,如果找到了,会构建一个异常的对象,会把异常产生的原因,异常产生的位置,异常产生的内容封装进该对象中在控制台显现出来,并且终止程序。

  throwable类中

    public String getMessage()返回此throwable的详细消息字符串。在Throwable类的下的子类Error异常情况是无法解决的,属于硬伤,作为程序员能够解决的是Exception这种类型的异常情况。

Exception:

  编译期异常:通过使用集成开发工具在编写程序的时候,就出现的异常问题,如果不处理,程序无法继进行,需要程序员立刻对异常做出处理,否则无法编写。

  运行期异常:在编译之后,程序在运行过程中产生的异常问题,JM把异常信息抛出,一般是由于逻辑错误导致的异常情况,通过优化你的代码可以解决掉的

编译期异常:除了RunTimeException异常之外,其余的都是编译期异常。

运行期异常:

  算术异常:Ari thmeticException

  空指针异常:Null PointerException

  越界异常:IndexOutOfBoundsException

  类转换异常:ClassCastException

最新文章

  1. CSS中不定宽块状元素的水平居中显示
  2. springmvc入门的第一个小例子
  3. 学习UFT11.5历程(二)
  4. delphi.指针.PChar
  5. jQuery学习笔记(在js中增加、删除及定位控件的操作)
  6. PhpStorm (强大的PHP开发环境)2016.2.1 附注册方法
  7. Git 使用的配置 常用命令
  8. greenplum如何激活,同步,删除standby和恢复原始master
  9. uboot环境变量与内核MTD分区关系
  10. C# 调用load事件
  11. SQL Server JDBC驱动中sqljdbc和sqljdbc4区别
  12. adnroid仿miui的dialog
  13. The message filter indicated that the application is busy. (Exception from HRESULT: 0x8001010A (RPC_E_SERVERCALL_RETRYLATER))
  14. 【转】为什么delete以后指针还能被赋值
  15. ArcSDE10.1配置Oracle 监听器来使用SQL操作ST_Geometry(个人改动版)
  16. js检测页面离开
  17. The process could not read file xxx due to OS error 53
  18. 登录ssh提示:ssh_exchange_identification: read: Connection reset by peer error
  19. ef学习一
  20. SSH的通讯和认证

热门文章

  1. Java实现 蓝桥杯 算法训练 Lift and Throw
  2. Java实现统计方案
  3. Arrays.binarySearch和Collections.binarySearch的详细用法
  4. Java实现 洛谷 P1422 小玉家的电费
  5. java算法集训代码填空题练习1
  6. 【asp.net core】7 实战之 数据访问层定义
  7. iOS-NSString常见方法
  8. 树莓派配置文档config.txt说明
  9. javascript 面向对象学习(二)——原型与继承
  10. 了解Nginx与PHP的交互?