当前位置:首页 > 基本用法

Java中创建线程

方式一,实现Runnable接口。
class TestThread implements Runnable {
	public void run(){

		while(true){
			System.out.println("TestThread running");				
		}
	}
}
启动线程:
Runnable tb = new TestThread();
Thread thread = new Thread(tb);
thread.start();
方式二,继承Thread。
class TestThread extends Thread {
	public void run(){

		while(true){
			System.out.println("TestThread running");				
		}
	}
}
启动线程:
TestThread thread = new TestThread();
thread.start();
方式三,使用Thread和Runnable创建匿名线程。
Thread thread = new Thread(new Runnable() {

	public void run() {
		System.out.print("TestThread running");
	}
});

thread.start();
阅读全文

Java中移动文件(或文件夹)

注意在使用File.renameTo之前,需要先判断源文件的存在性(若不存在则无法复制),目标文件的存在性(若已存在则涉及到是否覆盖的问题),目标目录的存在性(如不存在则可能需要创建)。
String oldFileName = "H:\\test.txt";
File file = new File(oldFileName);

String newFileName = "H:\\test2.txt";
File file2 = new File(newFileName);

file.renameTo(file2);
阅读全文

Java中获取文件的属性信息

File file = new File("D:\\testDir");

//文件名
System.out.println(file.getName());

//路径
System.out.println(file.getPath());

//绝对路径
System.out.println(file.getAbsolutePath());

//判断文件路径是否是绝对路径
System.out.println(file.isAbsolute());

//父路径,即上一级路径
System.out.println(file.getParent());

//判断文件是否存在
System.out.println(file.exists());

//判断文件是否可读
System.out.println(file.canRead());

//判断文件是否可写
System.out.println(file.canWrite());

//判断文件是否是隐藏文件
System.out.println(file.isHidden());

//判断是否是文件,即非目录
System.out.println(file.isFile());

//判断是否是目录
System.out.println(file.isDirectory());

//文件路径的URI
System.out.println(file.toURI());

//文件最后一次修改时间
System.out.println(new Date(file.lastModified()));

//文件尺寸bytes
System.out.println(file.length());

阅读全文

Java中使用异常

可以自定义异常类,继承自Expection
class MyException extends Exception{

	public MyException(){
		super();
	}

	public MyException(String msg){
		super(msg);
	}

	public MyException(String msg, Throwable cause){
		super(msg, cause);
	}

	public MyException(Throwable cause){
		super(cause);
	}
}
也可以自定义异常类,继承自Throwable:
class MyException extends Throwable{

	public MyException(){
		super();
	}

	public MyException(String msg){
		super(msg);
	}

	public MyException(String msg, Throwable cause){
		super(msg, cause);
	}

	public MyException(Throwable cause){
		super(cause);
	}
}
throws用于声明方法可能抛出异常,throw用于在方法体中抛出异常:
public static int add(int a, int b) throws MyException{

	if( a < 0 || b < 0) 
	{
		throw new MyException("param error");			
	}

	return a + b;
}
try、catch、finally,尝试执行方法,并捕获异常。在try的多条语句中,发生异常之后的语句将不再执行;但finally中的语句,无论是否抛出异常,都会执行。
boolean bInTry = false;
boolean bFinally = false;

try{
	int a = 3, b = -5;
	int nRet = add(a, b);
	bInTry = true;//如果add函数抛出异常,本句不会执行。
}
catch(MyException e) {
	System.out.println(e.getMessage());//通过getMessage方法可以获取msg字符串。
}
finally{
	bFinally = true;//无论add函数是否抛出异常,本句都会执行。
}
结果为:
param error
阅读全文

Java中使用StringTokenizer分隔字符串

不返回分隔符
String str = "姓名:张三;身高:很高;体重:很重";

StringTokenizer st = new StringTokenizer(str,";", false);
while(st.hasMoreTokens()){
	String strContent = st.nextToken();
	System.out.println(strContent);
}
结果为:
姓名:张三
身高:很高
体重:很重
返回分隔符
String str = "姓名:张三;身高:很高;体重:很重";

StringTokenizer st = new StringTokenizer(str,";", true);
while(st.hasMoreTokens()){
	String strContent = st.nextToken();
	System.out.println(strContent);
}
结果为:
姓名:张三
;
身高:很高
;
体重:很重
阅读全文

Linux中sort命令实例详解

sor将文件的每一行作为一个单位,相互比较,比较原则是从首字符向后,依次按ASCI码值进行比较,最后将他们按升序输出。不显示重复的行sort -u file.tx降序排列 不显示重复的行...阅读全文

Java中枚举指定目录下的所有文件

String dirPath = "D:\\test";
	File dirFile = new File(dirPath);
	if(dirFile.exists())
	{
		File[] files = dirFile.listFiles();
		for(int i = 0;i < files.length; i++)
		{
			File file = files[i];
			System.out.println(file.getAbsolutePath());
			if(file.isFile())
			{
				// do something you want here
			}
			else if(file.isDirectory())
			{
				// do something you want here					
			}
		}
	}
阅读全文

Java中的Map排序

Map<Integer,String> map = new HashMap<Integer,String>();
map.put(15, "abc");
map.put(10, "def");
map.put(12, "ghi");
map.put(3, "jkm");

List<Map.Entry<Integer,String>> mapIds = new ArrayList<Map.Entry<Integer,String>>(map.entrySet());  
//此时mapIds的内容为[3=jkm, 10=def, 12=ghi, 15=abc]

Collections.sort(mapIds, new Comparator<Map.Entry<Integer, String>>() {
	@Override
	public int compare(Entry<Integer, String> arg0,Entry<Integer, String> arg1) {
		return (arg1.getKey() - arg0.getKey());
	}
});
//此时mapIds的内容为[15=abc, 12=ghi, 10=def, 3=jkm]

阅读全文

Java中读写Properties属性文件

读Properties属性文件
Properties props = new Properties();
try {
	FileInputStream in = new FileInputStream("D:\\test\\resource.properties");
	props.load(in);
	in.close();
} catch (FileNotFoundException e) {

}
catch (IOException e) 
{

}
//打印到输出流
props.list(System.out);
写Properties属性文件:
Properties props = new Properties();
props.setProperty("language", "english");
props.setProperty("sex", "male");
System.out.println(props.getProperty("language"));

try {
	FileOutputStream out = new FileOutputStream("D:\\test\\resource.properties");
	props.store(out, "for test");
	out.close();
} catch (FileNotFoundException e) {

}
catch (IOException e) 
{

}
上述写入之后,D:\test\resource.properties的内容为:
#for test
#Fri Apr 04 20:34:05 CST 2014
sex=male
language=english
阅读全文

Java中String的基本用法

字符串查找
String str = "abc123456789";

//查找字符串最早出现的位置
int nIndex = str.indexOf("ab");//结果nIndex的值为0

nIndex = str.indexOf("23");//结果nIndex的值为4

//查找不到时,indexOf返回-1
nIndex = str.indexOf("333");//结果nIndex的值为-1

//查找字符串最后出现的位置
nIndex = str.lastIndexOf("67");//结果nIndex的值为8

//查找不到时,lastIndexOf返回-1
nIndex = str.lastIndexOf("99");//结果nIndex的值为-1
获取子字符串:
String str = "abc123456789";
String result = str.substring(3);//结果result的内容为123456789

result = str.substring(3, 6);//结果result的内容为123
替换子字符串:
String str = "abc123456123";
String result = str.replace("12", "www");//结果result的内容为abcwww3456www3

//只替换首次匹配的子字符串
result = str.replaceFirst("12", "www");//结果result的内容为abcwww3456123

//replaceAll支持正则表达式
result = str.replaceAll("\\d", "w");//将所有数字替换为"w",结果result的内容为abcwwwwwwwww
大小写转换:
String str = "abc123456XYZ";

//转换为小写
String result = str.toLowerCase();//结果result的内容为abc123456xyz

//转换为大写
result = str.toUpperCase();//结果result的内容为ABC123456XYZ
判断字符串是否相等:
String str1 = "abc123456123";
String str2 = "Abc123456123";

//判断是否相等
boolean bEqual = str1.equals(str2);//结果为false

//忽略大小写,判断是否相等
boolean bEqualIgnore = str1.equalsIgnoreCase(str2);//结果为true
阅读全文

返回页首返回页尾