JAVA学习笔记(十二)

一、基本类型包装类

  八种基本类型对应的包装类如下:

  byte-Byte,short-Short,int-Integer,long-Long,char-Character,boolean-Boolean,

  float-Float,double-Double

  1.将基本数值转换成字符串

  (1)基本类型直接与""相连即可;

  (2)调用String类中的valueOf方法;String.valueOf();

  (3)调用包装类中的toString方法:Integer.toString;

public static void main(String[] args) {
        int a=2;
        String b=a+"";
        String c=String.valueOf(a);
        String d=Integer.toString(a);
        System.out.println(c+1+d);
    }

  2.基本类型和对象转换

  基本数值---->包装对象的方式(装箱操作)

  (1)构造方法(基本数据类型)

  (2)包装类.valueOf(基本数据类型)方法

  包装对象---->基本数值(拆箱操作)

    包装类对象.xxValue();返回一个基本数据类型

Integer i=new Integer(3);//装箱操作
        Integer ii=new Integer("3");//装箱操作
        
        Integer i2=Integer.valueOf(4);//装箱操作
        Integer i3=Integer.valueOf("4");//装箱操作
        
        int a=i.intValue();//拆箱操作
        Integer i=4;//自动装箱
        int a=i+5;//自动拆箱
        System.out.println(a)
System.out.println(System.getProperties());
        /*int[] a= {1,5,3,8,6};
        int[] b= {2,8,9,6};
        System.arraycopy(a, 1, b, 1, 2);*/
        //System.arraycopy(src, srcPos, dest, destPos, length);
        /*
         * src:原数组名
         * srcPos:要复制的内容在原数组的下标
         * dest:目标数组
         * destPos:将要复制到目标位置的下标
         * length:需要复制元素的个数
         * 
         * */
        int src[]= {1,2,3,4,5};
        int dest[]= {6,7,8,9,10};
        System.arraycopy(src, 0, dest, 0,3 );
        System.out.print("[");
        for(int i=0;i<dest.length;i++) {
            System.out.print(dest[i]+",");
        }
        System.out.print("]");
    }

3.Math类

public static void main(String[] args) {
        // TODO Auto-generated method stub
            double a=Math.abs(-9.0);//取绝对值
            double b=Math.ceil(3.6);//向上取整
            double c=Math.floor(3.3);//向下取整
            double d=Math.round(3.3);//四舍五入的用法
            double max=Math.max(a, b);//最大值
            double min=Math.min(a , b);//最小值
            double e=Math.pow(a, b);//取次幂

4.数组相关

public static void main(String[] args) {
            int[] arr={66,2,8,4,9,33};
            //Arrays.sort(arr);//将数组升序排序
            Arrays.toString(arr);//用来返回指定数组元素内容的字符串形式
            System.out.println(Arrays.toString(arr));
            System.out.println();
            binarySearchdemo();
    }
    //查找指定数组下标
    public static void binarySearchdemo() {
            int[] arr= {5,9,11,56,99,100};
            int index=Arrays.binarySearch(arr, 11);
            System.out.println(index);
    }
public static void main(String[] args) {
        // TODO Auto-generated method stub
        int arr[]= {50,6,9,11,33,55,77,88,99,100};
        int a[]=method(arr);
        System.out.println(Arrays.toString(a));
    }
    public static int[] method(int[] arr) {
        int[] a=new int[3];//创建一个盛3个int数的数组
        Arrays.sort(arr);//给传进来的数组排序
        System.arraycopy(arr, 0, a, 0, 3);//把前三个分数最低的学生成绩给新数组
        return a;//返回新数组
    }

5.BigDecimal可以实现浮点数据的高精度计算

public static void main(String[] args) {
        // TODO Auto-generated method stub
            System.out.println(0.09+0.01);
            BigDecimal b1=new BigDecimal("0.09");
            BigDecimal b2=new BigDecimal("0.01");
            b1.add(b2);
            System.out.println(b1.add(b2));
            //System.out.println(1.0-.32);//丢失精度
            System.out.println();    
    }
原文地址:https://www.cnblogs.com/boringLee/p/8856882.html