一 Math类
1.1 Math类
java.lang.Math提供了一系列静态方法用于科学计算;其方法的参数和返回值类型一般为double型
-
abs:绝对值
-
acos,asin,atan,cos,sin,tan
-
sqrt:平方根
-
pow(double a, double b):a的b次幂
-
log:自然对数
-
exp:e为底指数
-
max(double a, double b)
-
min(double a, double b)
-
random():返回0.0到1.0的随机数
-
long round(double a):double型的数据a转换为long型(四舍五入)
-
toDegrees(double angrad):弧度-->角度
-
toRadians(double angdeg):角度-->弧度
二 File类
2.1 File类
java.io.File类代表系统文件名(路径和文件名)
2.1.1 File类的常见构造方法
-
public File(String pathname):以pathname为路径创建File对象,如果pathname是相对路径,则默认的当前路径在系统属性user.dir中存储
-
public File(String parent,String child):以parent为父路径,child为子路径创建File对象
-
File的静态属性String separator存储了当前系统的路径分隔符
2.1.2 File常用方法
通过File对象可以访问文件的属性
-
public boolean canRead();
-
public boolean canWrite();
-
public boolean exists();
-
public boolean isDirectory();
-
public boolean isFile();
-
public boolean isHidden();
-
public long lastModified();
-
public String getName();
-
public String getPath();
通过File对象创建空文件或目录(在该对象所指的文件或目录不存在的情况下)
-
public boolean createNewFile() throws IOException
-
public boolean delete();
-
public boolean mkdir();
-
public boolean mkdirs();//创建在路径中的一系列目录
如下面一段代码
import java.io.*;
public class TestFile {
public static void main(String[] args) {
String separator = File.separator;
String filename = "myfile.txt";
String directory = "mydir1" + separator + "mydir2";
File f = new File(directory, filename);
if (f.exists()) {
System.out.println("文件名: " + f.getAbsolutePath());
System.out.println("文件大小: " + f.length());
} else {
f.getParentFile().mkdirs();
}
}
}
1.2 练习
编写一个程序,在命令行中以树状结构展现特定的文件夹及其子文件夹
import java.io.*;
public class FileList {
public static void main(String[] args) {
File f = new File("d:/A");
System.out.println(f.getName());
tree(f, 1);
}
private static void tree(File f, int level) {
String preStr = "";
for(int i=0; i<level; i++) {
preStr += " ";
}
File[] childs = f.listFiles();
for(int i=0; i<childs.length; i++) {
System.out.println(preStr + childs[i].getName());
if(childs[i].isDirectory()) {
tree(childs[i], level + 1);
}
}
}
}