首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

黑马软件工程师——Java递归案例及io流概述

2013-10-23 
黑马程序员——Java递归案例及io流概述---------------------- ASP.Net+Android+IOS开发、.Net培训、期待与您

黑马程序员——Java递归案例及io流概述

---------------------- ASP.Net+Android+IOS开发、.Net培训、期待与您交流! ----------------------

1:递归是什么,有什么注意事项
?递归是方法定义中调用了方法本身的现象

?递归中构造方法不能递归
?递归一定要有出口,否则就是死递归
?递归的次数不能太多,否则会有可能发生内存溢出


2:递归案例一之求阶乘

/*
阶乘递归,方法中调用方法本身

*/
import java.util.Scanner;
public class LoopTest{
?public static void main(String[]args){
??Scanner sc=new Scanner(System.in);
??System.out.println("请您输入你要阶乘的数字");
??int num=sc.nextInt();
??System.out.println(loopMethord(num));??
?}
?public static? int loopMethord(int num){
??if(num<=0){
???System.out.println("请您输入大于等于1以上的数字,例如,3");
??? return num;
??}else {
???if(num==1){
????return 1;
???}else {
????return num*loopMethord(num-1);
???}
??}
?}
}

?

?

3递归案例二之兔子问题
/*
兔子问题
1?1?2?3?5?8?13....
*/
import java.util.Scanner;
public class RabbitLoop{
?public static void main(String[]args){
??Scanner sc=new Scanner(System.in);
??System.out.println("请你输入你要查询兔子数的月份:");
??int num=sc.nextInt();
??System.out.println(loop(num));

?}
?public static int loop(int num){
??if(num==1||num==2){
???return 1;
??}else{
???return loop(num-1)+loop(num-2);
??}
?}
}

?


4.递归案例三之删除带内容的目录

/*
删除带内容的目录F:\javase
*/
import java.io.File;
public class DeleteTest{
?public static void main(String[]args){
??File file=new File("F:\\javase");
??deleteMethord(file);
???
?}

?public static void deleteMethord(File file){
??File[] fs=file.listFiles();

??for(File fss:fs){
???if(fss.isDirectory()){
????deleteMethord(fss);
???}else{
????System.out.println(fss.getName()+fss.delete());
???}
??}
??file.delete();
?}
}

4.IO(Input? Output)流

IO流用来处理设备之间的数据传输
Java对数据的操作是通过流的方式
Java用于操作流的对象都在IO包中
流按操作数据分为两种:字节流与字符流。
流按流向分为:输入流,输出流。
5.IO流常用基类

A:字节流的抽象基类:
InputStream ,OutputStream。
B:字符流的抽象基类:
Reader , Writer。
C:注:由这四个类派生出来的子类名称都是以其父类名作为子类名的后缀。
如:InputStream的子类FileInputStream。
如:Reader的子类FileReader。
6.IO程序的书写

A:导入IO包中的类
B:进行IO异常处理
C:在finally中对流进行关闭

---------------------- ASP.Net+Android+IOS开发、.Net培训、期待与您交流! ---------------------- 详细请查看:http://edu.csdn.net

?

热点排行