java数组

230 阅读2分钟

1. 数组

  • 数组的创建:
  1. 直接创建
  2. 使用 newInstance() 方法创建
int[] a = new int[8];
int[] b = Array.newInstance(int8)

2. 数组工具类:Arrays

  1. 在 java.util 包下
  2. 相关常用方法:
    1. static int binarySearch(int[] a, int k) : 使用二分查找
    2. static int[] copyOf(int[] original, int from, int to) : 复制数组
    3. static boolean equals(int[] a, int[] b) : 判断两个数组是否相等
    4. static void fill(int[] a, int k) : 数组 a 全部替换为 k

3. String 类 和 StringBuilder 类和 StingBuffer 类

1. String 类

  • String 底层是一个 byte[] 数组

  • String 类常用方法:

    1. char charAt(int index) : 根据下标查找
    2. int compareTo(String anotherStr) : 比较两个字符串
    3. String concat(String str) : 将指定的字符串连接到末尾
    4. boolean contains(char s) : 是否包含 s 字符
    5. boolean endsWith(String str) : 是否以 str 结尾
    6. boolean startsWith(String str) : 是否以 str 开头
    7. boolean equals(String str) : 字符串比较
    8. boolean equalsIgnoreCase(String str) : 字符串比较(忽略大小写)
    9. byte[] getBytes() : 转化为字节序列
    10. int indexOf(String s) : 返回第一次出现时的索引
    11. int lastIndexOf(String s) : 返回最后一次出现时的索引
    12. boolean isEmpty() : 判断字符串是否为空
    13. String replace(String oldStr, String newStr) : newStr 替代 oldStr
    14. String[] split(String regex) : 将此字符串根据 regex 分割为多个字符串。
    15. String substring(int biginIndex, int endIndex) : 截取字符串,从起始位置到末尾位置
    16. char[] toCharArray() : 转化为字符数组
    17. String toUpperCase() : 转化为大写
    18. String toLowerCase() : 转化为小写
    19. String trim() : 删除任何前导和尾随空格
    20. static String valueOf() : 将非字符串转化为字符串

2. StringBuilder 类

  • StringBuilder 在 java.lang 包下
  • StringBuilder 也是字符串,当需要频繁拼接字符串时,使用 StringBuilder
  • StringBuilder 的初始默认容量是 16
  • StringBuilder 常用方法:
    1. StringBuilder append(String str) : 将指定的字符串添加到此序列中
    2. int indexOf(String str)
    3. StringBuilder delete(int start, int end) : 删除此序列的子字符串中的字符
    4. StringBuilder insert(int offset, String str) : 在 offset 处插入 str 字符串
    5. StringBuilder replace(int start, int end, String str) : 用指定的 str 字符串替换此序列的子字符串
    6. String subString(int start, int end) : 截取字符串

3. StringBuffer

  • StringBuffer 和 StringBuilder 类似,但 StringBuffer 是线程安全的。