从零开始学java - 第五天

133 阅读3分钟

这是我参与11月更文挑战的第5天,活动详情查看:2021最后一次更文挑战

今天继续~

StringBuffer 和 StringBuilder 类

- 当对字符串进行修改的时候,需要使用 StringBuffer 和 StringBuilder 类

public StringBuffer append(String s) - 追加字符串

public StringBuffer reverse() - 反转字符串

public delete(int start, int end) - 删除指定字符串

public insert(int offset, int i) - 指定位置插入字符串

replace(int start, int end, String str) - 替换对应位置的字符串

int capacity() - 返回当前容量

char charAt(int index) - 返回索引处的char值

void ensureCapacity(int minimumCapacity) - 为容量设置下限

int indexOf(String str) - 返回第一次出现的指定子字符串在该字符串中的索引

int length() - 返回长度

void setCharAt(int index, char ch) - 将索引处的字符替换为ch

void setLength(int newLength) - 设置字符的长度

CharSequence subSequence(int start, int end) - 返回一个新的子序列

String substring(int start,int end) - 返回一个新的字符串(开始位置,结束位置)

String toString() - 返回此序列中数据的字符串表示形式

数组

数组变量的声明

  • dataType[] arrayRefVar; - 首选这个方法
  • dataType arrayRefVar[]; - 也能用
double[] myList;

创建数组

  • arrayRefVar = new dataType[arraySize]; - 创建指定大小的数组
  • dataType[] arrayRefVar = {value0, value1, ..., valuek}; - 通过元素的数量确定数组长度

for-each循环

  • myList为数组,element为数组中每一个值
for (double element: myList) { 
    System.out.println(element);
}

多维数组

  • 一个大数组里面嵌套多个数组 String[][] str = new String[3][4];

Arrays类

public static int binarySearch(Object[] a, Object key) - 使用二分查找法查找给定值的对象,数组必须是提前排序好的,找到返回索引,找不到返回-1

public static boolean equals(long[] a, long[] a2) - 如果两个数组完全相同则返回true

public static void fill(int[] a, int val) - 用指定的int值填充int数组

public static void sort(Object[] a) - 升序排序

日期时间

Date(long millisec) - 参数可选,为从1970年1月1日起的毫秒数

boolean after(Date date) - 调用此方法的Date对象在指定日期之后返回true,否则返回false

boolean before(Date date) - 调用此方法的Date对象在指定日期之前返回true,否则返回false

Object clone( ) - 返回此对象的副本

int compareTo(Date date) - 比较日期,相等返回0,date大返回负数,date小返回正数

boolean equals(Object date) - 两个日期相等返回true,否则返回false

long getTime( ) - 返回自 1970 年 1 月 1 日 00:00:00 GMT 以来此 Date 对象表示的毫秒数

int hashCode( ) - 返回对象的哈希值

void setTime(long time) - 用自1970年1月1日00:00:00 GMT以后time毫秒数设置时间和日期

String toString( ) - 把此 Date 对象转换为以下形式的 String: dow mon dd hh:mm:ss zzz yyyy 其中: dow 是一周中的某一天 (Sun, Mon, Tue, Wed, Thu, Fri, Sat)

ps:如果从头看下来就能发现这是有一些规律的,比如equals都是用来查看两者是否相等,compareTo都是对两者做比较,hashCode都是返回哈希值等等

SimpleDateFormat 格式化日期

public class DateDemo {
    public static void main(String[] args) {
        Date dNow = new Date( ); 
        SimpleDateFormat ft = new SimpleDateFormat ("yyyy-MM-dd hh:mm:ss");
        System.out.println("当前时间为: " + ft.format(dNow)); 
    } 
}

ps:format - 格式化字符串 时间这一部分有点多,明天继续,晚安~