Pattern类
返回类型
方法名
解释
static Pattern
compile(String regex)
将给定的正则表达式编译到模式中。
static Pattern
compile(String regex, int flags)
将给定的正则表达式编译到具有给定标志的模式中。
int
flags()
返回此模式的匹配标志。
Matcher
matcher(CharSequence input)
创建匹配给定输入与此模式的匹配器。
static boolean
matches(String regex, CharSequence input)
编译给定正则表达式并尝试将给定输入与其匹配。
String
pattern()
返回在其中编译过此模式的正则表达式。
static String
quote(String s)
返回指定 String 的字面值模式 String。
String[]
split(CharSequence input)
围绕此模式的匹配拆分给定输入序列。
String[]
split(CharSequence input, int limit)
围绕此模式的匹配拆分给定输入序列。
String
toString()
返回此模式的字符串表示形式。
阅读全文
新建 /**
* 新建文件
* @param path 绝对路径
* @return 新建成功返回ture,新建失败或以存在此文件返回false
*/
public static boolean newFile(String path)
{
File file = new File(path);
file.getParentFile().mkdirs();
try
{
return file.createNewFile();
} catch (IOException e)
{
e.printStackTrace();
return false;
}
}
阅读全文
InputStreamReaderpublic class Test
{
public static void main(String[] args) throws IOException
{
InputStreamReader isr = new InputStreamReader(new FileInputStream("E:\\Test11.txt"));
//markSupported() boolean 判断此流是否支持 mark() 操作以及支持哪一项操作。
System.out.println("markSupported():" + isr.markSupported());
//ready() boolean 判断此流是否已经准备好用于读取。
System.out.println("ready():" + isr.ready());
//read() int 读取单个字符。
System.out.println("read():" + isr.read());
char[] chars1 = new char[26];
//read(char[] cbuf) int 将字符读入数组。
isr.read(chars1);
System.out.println("read(char[] cbuf):" + new String(chars1));
char[] chars2 = new char[26];
//read(char[] cbuf, int off, int len) int 将字符读入数组的某一部分。
isr.read(chars2, 0, 13);
System.out.println("read(char[] cbuf, int off, int len):" + new String(chars2));
//skip(long ns) long 将该流重置为最新的标记,如果从未标记过,则将其重置到该字符串的开头。
isr.skip(1);
//close() void 关闭该流并释放与之关联的所有系统资源。
isr.close();
}
}
阅读全文
ByteArrayInputStreampublic class Test
{
public static void main(String[] args) throws IOException
{
byte[] bytes1 = new byte[52];
for(int i = 0;i < bytes1.length;i++)
{
bytes1[i] = (byte) ('a' + i%26);
}
ByteArrayInputStream bais1 = new ByteArrayInputStream(bytes1);
//skip(long n) long 从此输入流中跳过 n 个输入字节。
System.out.println("skip(long n):" + bais1.skip(256));
//available() int 返回可从此输入流读取(或跳过)的剩余字节数。
System.out.println("available():" + bais1.available());
//markSupported() boolean 测试此 InputStream 是否支持 mark/reset。
System.out.println("markSupported():" + bais1.markSupported());
//mark(int readAheadLimit) void 设置流中的当前标记位置。
bais1.mark(512);
//read() int 从此输入流中读取下一个数据字节。
System.out.println("read():" + bais1.read());
byte[] bytes2 = new byte[512];
//read(byte[] int 从此输入流中将最多 b.length 个字节的数据读入一个 byte 数组中。
System.out.println("read(byte[]):" + bais1.read(bytes2));
System.out.println(new String(bytes2));
//read(byte[] b, int off, int len) int 将最多 len 个数据字节从此输入流读入 byte 数组。
System.out.println("read(byte[] b, int off, int len):" + bais1.read(bytes2, 0, 128));
System.out.println(new String(bytes2));
//reset() void 将缓冲区的位置重置为标记位置。
bais1.reset();
System.out.println("reset():" + bais1.available());
//close() void 关闭 ByteArrayInputStream
bais1.close();
}
}
阅读全文
概述URI(uniform resource identifier)统一资源标识符URL(uniform resource locator)统一资源定位器
URL是URI的一种,不仅标识了Web 资源,还指定了操作或者获取方式,同时指出了主要访问机制和网络位置
●在Java类库中,URI类不包含任何访问资源的方法,它唯一的作用就是解析。相反的是,URL类可以打开一个到达资源的流。因此URL类只能作用于那些 Java类库知道该如何处理的模式,例如http:,https:,ftp:,本地文件系统(file:),和Jar文件(jar:)。
阅读全文
概述FileFilter和FilenameFilter都是文件过滤器,都是一个接口,只有方法accept(),accept返回true表示符合所需文件标准,要过滤掉的文件则返回false
阅读全文
1. 考虑用静态工厂方法代替构造器优点:
拥有名称,更容易识别
不必每次调用时,都创建一个新的对象
可以返回返回类型的任何子类型对象
使代码更简洁
缺点:
类如果不含共有的或者受保护的构造器,就不能被子类化。
它们与其他的静态方法实际上没有任何区别。
应用:
服务提供者框架
阅读全文