Java—Array类、基本包装类型

文章目录

    • 一、Arrays类
      • 1. Arrays类概述及使用方法
    • 二、基本类型包装类
      • 1. 基本类型包装类概述
      • 2. 基本数据类型与其对应的包装类
      • 3. Integer类的概述及构造方法
      • 4. String与int类型相互转化
      • 5. 自动装箱与拆箱
      • 6. Integer类练习

一、Arrays类

1. Arrays类概述及使用方法

  • 作用
    • 提供了针对数组进行操作的各种方法,例如排序、查找、拷贝等,是一个工具类,不可实例对象
  • 成员方法
    • public static String toString(int[] a)
      • 将指定int型数组转换为字符串类型
    • public static void sort(int[] a)
      • 将指定的int型数组按升序排序
    • public static int binarySearch(int[] a,int key)
      • 按照二分查找方法,在指定的数组内寻找指定元素的索引
    • static boolean equals(int[] a, int[] a2)
      • 比较两个数组的值是否相等,相等则返回true
    • static int[] copyOf(int[] original, int newLength)
    • 复制指定的数组,使副本具有指定的长度,多余部分舍去,不够用0填补
    • static int[] copyOfRange(int[] original, int from, int to)
      • 将指定数组的指定索引范围复制到另一个新数组中

二、基本类型包装类

1. 基本类型包装类概述

  • 为什么会有基本包装类型
    • 因为在对基本数据类型进行操作时,为了更方便的进行操作,所以就针对每一种基本数据类型给出了对应的包装类型
  • 常用方法
    • 基本数据类型与字符串间转化

2. 基本数据类型与其对应的包装类

基本数据类型对应的包装类
byteByte
shortShort
intInteger
longLong
floatFloat
doubleDouble
charChar
booleanBoolean

3. Integer类的概述及构造方法

  • Integer类概述
    • int类型的包装类,在Integer类中包装了一个基本类型int
    • 提供了多个方法,能够在int与String类型间转化
  • Integer类构造方法
    • public Integer(int value)
      • 创建一个Integer类的对象,存储指定的int值
    • public Integer(String s)
      • 创建一个Integer类的对象,存储将String类型转换为int类型值后的值
  • Integer类的常用方法
    • public xxx xxxValue()
      • 以xxx类型返回该Integer对象的值
    • public String toString()
      • 将Integer对象转化为字符串
    • public boolean equals(Object obj)
      • 比较两个Integer对象的的地址值是否相等
    • public int compareTo(Integer anotherInteger)
      • 在数值上比较两个Integer对象是否相等

4. String与int类型相互转化

  • int——>String
    • 与空串拼接
    • 调用String类的静态方法valueof方法
    • int——>Integer——>String
    • 调用Integer类的toString方法
  • String——>int
    • String——>Integer——>int
    • Intrger类的parseInt方法

5. 自动装箱与拆箱

  • 自动装箱
    • 将基本类型转换为包装类类型
  • 自动拆箱
    • 将包装类类型转化内为基本类型
  • 注意事项
    • 如果在自动拆装箱时有Integer x = null; 代码就会报空指针异常
    • 建议先判断是否为null,再使用

6. Integer类练习

  • 问题
看程序写结果Integer i1 = new Integer(127);Integer i2 = new Integer(127);System.out.println(i1 == i2);//q1System.out.println(i1.equals(i2));//q2System.out.println("-----------");Integer i3 = new Integer(128);Integer i4 = new Integer(128);System.out.println(i3 == i4);//q3System.out.println(i3.equals(i4));//q4System.out.println("-----------");Integer i5 = 128;Integer i6 = 128;System.out.println(i5 == i6);//q5System.out.println(i5.equals(i6));//q6System.out.println("-----------");Integer i7 = 127;Integer i8 = 127;System.out.println(i7 == i8);//q7System.out.println(i7.equals(i8));//q8
  • 答案
问题q1q2q3q4q5q6q7q8
答案falsetruefalsetruefalsetruetruetrue