106.梅森素数。
public class MeiSengSushu {
public static void main(String[] args) {
int num;
for(int i=2;i<=31;i++) {
num=(int)(Math.pow(2, i)-1);
if(isPrime(num)) {
System.out.println(i);
}
}
}//若2n-1是素数,n也是素数;//反之,当n是素数时,2n-1却未必
public static boolean isPrime(int num) {
for(int i=2;i<num;i++) {
if(num%i==0) {
return false;
}
}
return true;
}
}
- 判断E盘目录下是否有后缀名为.jpg的文件,如果有,就输出此文件名称。
分析:
A:封装E盘目录;
B:获取该目录下所有文件或者文件夹的File的数组;
C:遍历该File数组,得到每一个File对象,然后判断;
D:是否是文件:
是:继续判断是否以.jpg结尾。
是:就输出该文件名称
否:不理他。
否:不理他。
import java.io.File;
public class FileDemo {
public static void main(String[] args) {
File
file=new File(“e:\”);
File[]
fileArray=file.listFiles();
for(File f:fileArray) {
if(f.isFile()) {
if(f.getName().endsWith(".jpg")) {
System.out.println(f.getName());
}
}
}
}
}
- 需求:把E:\评书\三国演义下的视频名称修改为:00?-介绍.avi
思路:A:封装目录。 B:获取该目录下所有的文件的File数组。
C:遍历该File数组,得到每一个File对象。D:拼接一个新的名称,然后重命名即可。
import java.io.File;
public class FileDemo {
public static void main(String[] args) {
File
srcFolder=new File(“E:\评书\三国演义”);
File[]
fileArray=srcFolder.listFiles();
for(File file:fileArray) {
String
name=file.getName();
int startIndex=name.indexOf(’-’);
String
numberString=name.substring(startIndex+1,startIndex+4);
int endIndex=name.lastIndexOf(’-’);
String
nameString=name.substring(endIndex);
String
newName=numberString.concat(nameString);
File
newFile=new File(srcFolder,newName);
file.renameTo(newFile);
}
}
}
109, 需求:把E:Java目录下所有的java结尾的文件的绝对路径输出到控制台。
分析: A:封装目录。 B:获取该目录下所有的文件或者文件夹的File数组
C:遍历该File数组,得到每一个File对象。
D:判断该File对象是否是文件夹。
是:回到B。 否:继续盼到是否以.java结尾。{ 是:输出该文件的绝对路径。否:不搭理。}
import java.io.File;
public class FilePathDemo {
public static void main(String[] args) {
File
srcFolder=new File(“E:\Java”);
get(srcFolder);
}
public static void get(File srcFolder) {
File[]
fileArray=srcFolder.listFiles();
for(File file:fileArray) {
if(file.isDirectory()) {
get(file);
}else {
if(file.getName().endsWith(".java")) {
System.out.println(file.getAbsolutePath());
}
}
}
}
}
110.需求:递归删除带内容的目录。
分析:
A:封装目录。B:获取该目录下的所有文件或者文件夹的File数组。
C:遍历File数组,得到每一个File对象。
D:判断该File对象是否是文件夹。 是:回到B。 否:删除。
import java.io.File;
public class FileDeleteDemo {
public static void main(String[] args) {
File
srcFolder=new File(“E:\评书”);
delete(srcFolder);
}
public static void delete(File srcFolder) {
File[]
fileArray=srcFolder.listFiles();
for(File file:fileArray) {
if(file.isDirectory()) {
delete(file);
}else {
System.out.println(file.getName()+"—"+file.delete());
}
}
System.out.println(srcFolder.getName()+"—"+srcFolder.delete());
}
}