Character
Character类:char类型 包装类类型
构造方法:
Character(char value) :将一个char类型的字符值构造成Character类对象
常用成员方法:
判断字符是否为大写字母字符
public static boolean isUpperCase(char ch)
判断字符是否为小写字母字符
public static boolean isLowerCase(char ch)
判断字符是否为数字字符
public static boolean isDigit(char ch)
Date
构造方法:
-
public Date():无参构造方法 :创建日期对象,获取当前系统时间的日期格式
-
:包含星期 年份 月份 月中的日期... (获取当前日期:使用这个)
-
public Date(long date):创建日期对象,和1970年1月1日时间有关系 00:00:00
-
成员方法:
-
public long getTime():获取时间的毫秒值
Random
Random() 创建对象之后,调用nextInt()/nextInt(int n):每次随机数数字不一样的
public Random(long seed) :调用nextInt()/nextInt(int n):每次随机数数字一样的 //不推荐用这个
成员方法
int nextInt():int类型的范围获取
int nextInt(int n): [0,n) :范围
有一个集合,集合里面存储的随机数,而且保证集合的元素必须唯一,将元素一一遍历出来;
List<Integer>:集合可以重复 Set:集合不可以重复
System类
System类的一些常用功能:
public static void exit(int status) :参数为0,退出Jvm(正常终止),如果参数不为0,属于异常终止;
public static long currentTimeMillis():获取当前系统时间毫秒值
场景:后面使用IO流传输文件 的耗时时间 (比较耗时的操作) public static void arraycopy(Object src, 数据源(举例:原数组)
int srcPos, 原数组中某个位置
Object dest, 目的数据(目标数组)
int destPos, 目标数组的某个位置
int length 复制的长度
) :复制数组的一部分内容
public static void gc():手动开启垃圾回收器,回收没有更多引用的对象
会调用Object类的finalize()方法
面试题(华为机试题)
/**
* 获取一个字符串在另一个字符串中出现的次数
* 举例:
* 原来字符串是"abcdefabxxxxxxxx"
* 统计"ab"出现的次数
*
* "waijavawzhendehenaijavawzhenzhendehenaijava" --->"java"
* 分析:
* 定义统计变量count
* 定义索引值:index
* 查询ab这个子字符串在大串第一次出现索引值, 赋值index ----->indexOf("子字符串")
* 下一次:在大串截取字符串,subString(查询的元素+字符串长度) 一直循环,使用while循环
* 条件:如果index的值-1,找不到,结束
* while(index=大串中.indexOf(子字符串)!=-1):赋值,判断一块使用
*/
public class Test {
public static void main(String[] args) {
String str = "abcdefab" ;
String key = "ab" ;
int count = getCount(str, key);
System.out.println(count);
}
public static int getCount(String str,String key){
//定义统计变量
int count = 0 ;
//查询的key的索引值
int index = 0 ;
while((index=str.indexOf(key))!=-1){ //赋值,判断一块使用
//进来:循环了一次:找了一次
count++ ;
System.out.println(str); //测试 str
//大串不断截取
str = str.substring(index+key.length()) ; //指定位置开始默认截取到末尾 (查询到的索引+子串长度)
}
return count ;
}
}