Java之异常处理与工具类

异常处理

①   Error(错误)

Error(错误)

一般指比较严重的问题,不做针对性处理,无法挽救;

           OutOfMemoryError  内存溢出

 

②   Exception (异常)

Exception(异常)

              checked Exception(受检异常

                  强制在编译期对可能出现的问题做一个预处理

              unchecked Exception(非受检异常)

                  运行之后才能触发

 

       try  catch (代码异常捕获)

         try(尝试执行的代码)catch(捕获到的异常对象)(对异常的处理方式)

         finally(不论是否有异常,都将执行到的代码)

 

       多异常处理,可以1个try,多个catch;catch里面范围大的放后面

 

       Java中常见的异常 :

 

java.lang.NullPointerException     SecturityException

IOException   java.lang.classnotfoundexception

java.lang.arrayindexoutofboundsexception 

java.lang.illegalargumentexception FileNotFoundException

NoSuchMethodException    java.lang.OutOfMemoryError

java.lang.ClassNotFoundException  

java.lang.IllegalArgumentException


工具类

①   Array(排序)

array 的排序默认是升序排序

int [] num  =  {1,2,3,4,5,6};
    //排序
    Arrays.sort(num);
    //打印
    System.out.println(Arrays.toString(num));
    //复制
    Arrays.copyOf(num,4);
    //填充
    Arrays.fill(num,666);
    //比较
    Arrays.equals(xx,xx);


②   StringBuffer/StringBuilder

    StringBuffer/StringBuilder 的应用只在于字符串大量的拼接或者修改操作时使用

    StringBuffer   速度慢   安全

    StringBuilder 速度快    不安全

public class Demo {
    public static void main(String[] args) {
        StringBuffer stb=new StringBuffer("hello");
        String str=stb.toString();
        System.out.println(str);
 
        //拼接
        stb.append('A');
        stb.append(12);
        stb.append("xx");
        System.out.println(stb);
 
        //删除
        stb.delete(1, 4);       //(删头不删尾)
        System.out.println(stb);   
 
        //插入
        stb.insert(3, 999);
        System.out.println(stb);
 
        //替换
        stb.replace(1, 3,"dd");
 
        //翻转
        stb.reverse();
 
        //截取
        stb.substring(2, 4);
    
    }
 
}


③   Random(随机)

 public class Demo2 {
   public static void main(String[] args) {
      Random ran=new Random();
      for(int i=0;i<20;i++){
        System.out.println(ran.nextBoolean());
        System.out.println(ran.nextDouble());
        System.out.println(ran.nextInt());
        //0-9,不包括10
        System.out.println(ran.nextInt(10));
        System.out.println("-----------------------");
      }
      
      //Math.Random()函数
      //调用这个Math.Random()函数能够返回带正号的double值,该值大于等于0.0且小于1.0,即取值范围是[0.0,1.0)的左闭右开区间,
      //返回值是一个伪随机选择的数,在该范围内(近似)均匀分布。
      for(int i=0,i<10,i++){
        int num=(int)(Math.random()*3);[0,3)  
        System.out.println(num);
      }
   }
}

 

④   Math

 public class Demo {
   public static void main(String[]args) {
      //绝对值
      System.out.println(Math.abs(-4));     // 4
      //最大值
      System.out.println(Math.max(5,94));   // 94
      //平方根
      System.out.println(Math.sqrt(9));     // 3
      //立方根
      System.out.println(Math.cbrt(27));    // 3
      //向上取整
      System.out.println(Math.ceil(-6.3));  // -6
      //向下取整
      System.out.println(Math.floor(-6.8));  //-7
      //四舍五入
      System.out.println(Math.round(-6.4));  //-6
      //π
      System.out.println(Math.PI);
      //e
      System.out.println(Math.E);
     
      System.out.println(Math.pow(3, 2)); //3的平方
   }
 

 

⑤   Date

public class Demo {
   public static void main(String[]args) throws ParseException {
      Date date = new Date();
      System.out.println(date);
 
      date.setTime(0);
      System.out.println(date);
 
      // 修改日期的显示格式2015-10-25 17:20:21
      Date date1 = new Date();
      SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
      String str = df.format(date1);
      System.out.println(str);
 
      // 从一个字符串中解析出一个Date对象
      String time = "1999-12-21 20:62:10";
      SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
      Date d = sf.parse(time);
      String s1 = df.format(d);
      System.out.println(s1);
   }
}


 

 

 


 


 

 

 

 

 


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值