枚举:
class FreshJuice {
enum FreshJuiceSize{ SMALL, MEDIUM , LARGE }
FreshJuiceSize size;
}
public class FreshJuiceTest {
public static void main(String[] args){
FreshJuice juice = new FreshJuice();
juice.size = FreshJuice.FreshJuiceSize.MEDIUM ;
}
}
API类:
时间:
Calendar类、Date
数字:
Number、Math、
字符:
Character
字符串:
String、StringBuffer、StringBuilder
String 类不同的是,StringBuffer 和 StringBuilder 类的对象能够被多次的修改,并且不产生新的未使用对象。
StringBuilder 类在 Java 5 中被提出,它和 StringBuffer 之间的最大不同在于 StringBuilder 的方法不是线程安全的(不能同步访问)。
由于 StringBuilder 相较于 StringBuffer 有速度优势,所以多数情况下建议使用 StringBuilder 类。
public class RunoobTest{
public static void main(String args[]){
StringBuilder sb = new StringBuilder(10);
sb.append("Runoob..");
System.out.println(sb);
sb.append("!");
System.out.println(sb);
sb.insert(8, "Java");
System.out.println(sb);
sb.delete(5,8);
System.out.println(sb);
}
}
public class Test{
public static void main(String args[]){
StringBuffer sBuffer = new StringBuffer("菜鸟:");
sBuffer.append("www");
sBuffer.append(".runoob");
sBuffer.append(".com");
System.out.println(sBuffer);
}
}
正则表达式:
正确规则的表达式
通常用来检测字符串是否符合某规则、根据某规则切分字符串 或 替换符合规则的文本
常见的正则表达式:
表达式 描述
^[a-z0-9_-]{3,16}$ 用户名
^[a-z0-9_-]{6,18}$ 密码
^([a-z0-9_\.-]+)@([\da-z\.-]+)\.([a-z\.]{2,6})$ 电子邮箱
[\u4e00-\u9fa5] 匹配中文字符的正则表达式
字符串正则的常用方法:
boolean matches(String regex) 当前字符串是否匹配给定的正则表达式
String replaceAll(String regex,String replacement) 使用 replacement 替换当前字符串中所有符号正则表
达式的内容
String[] split(String regex) 根据给定的正则表达式拆分当前字符串
实践:
String regex = "\\b[a]\\b";
String str = "a";
booleanflag = str.matches(regex);
文件File类:
1.获取文件绝对路径
File v=new File("src/data.txt");
System.out.println(v.getAbsolutePath());
2.获取文件定义时候使用的路径
File v=new File("src/data.txt");
System.out.println(v.getPath());
3.获取文件的名称,带后缀
File v=new File("src/data.txt");
System.out.println(v.getName());
........
IO:
Java IO 也称为IO流,IO = 流,它的核心就是对文件的操作,对于 字节 、字符类型的输入和输出流。
IO是指对数据流的输入和输出,也称为IO流,IO流主要分为两大类,字节流和字符流。字节流可以处理任何类型的数据,如图片,视频等,字符流只能处理字符类型的数据。
IO流的本质是数据传输,并且流是单向的。
常用的字节流FileInputStream、FileOutputStream、ObjectInputStream、ObjectOutputStream。
IO分阻塞型IO和非阻塞型IO(NIO):
阻塞型IO在读取数据时,如果数据未到达,会一直阻塞到读取到数据为止,所以称为阻塞型IO,在高并发的环境下性能不佳。
NIO不是使用 “流” 来作为数据的传输方式,而是使用通道,通道的数据传输是双向的,且NIO的数据写入和读取都是异步的,不会阻塞线程,所以称为非阻塞型IO,在高并发的环境下性能很好。