1. วิธีการเรียกซ้ำ
1. การเรียกซ้ำคือการเรียกวิธีการของคุณเองหลักฐานคือมีวิธีการ
2. การใช้ซ้ำ
การค้นหากฎการเรียกซ้ำต้องมีเงื่อนไขการออกนั่นคือเงื่อนไขสิ้นสุด
3. สิ่งที่ควรทราบ
การเรียกซ้ำไม่สามารถเกิดขึ้นได้หลายครั้งเกินไปไม่เช่นนั้นจะมีสแต็กล้นและไม่สามารถใช้การเรียกซ้ำในการทำรังไม่เช่นนั้นจะมีการเรียกซ้ำที่ตายแล้ว
2.IO บทนำ
1. ฉันคืออินพุตอินพุตและ O คือเอาต์พุตเอาต์พุต API ห่อหุ้มสตรีมอินพุตและเอาต์พุตลงในคลาสซึ่งให้วิธีการจำนวนมากเพื่อให้เราใช้
2. เทคโนโลยี IO สามารถเขียนข้อมูลไปยังอุปกรณ์ถาวร (รวมถึงฮาร์ดดิสก์ดิสก์ออปติคัลดิสก์ USB ฯลฯ ) แม้ว่าคอลเลกชันและอาร์เรย์สามารถจัดเก็บและอ่านได้ แต่ก็มีอยู่ในหน่วยความจำชั่วคราวเท่านั้นและจะไม่มีอยู่เมื่อโปรแกรมเริ่มต้นใหม่
3. เปรียบเทียบกับการอ้างอิงของหน่วยความจำการอ่านสิ่งต่าง ๆ จากฮาร์ดดิสก์ลงในหน่วยความจำเรียกว่าสตรีมอินพุต การเขียนข้อมูลหน่วยความจำไปยังฮาร์ดดิสก์เรียกว่ากระแสเอาต์พุต
3. รหัสเพื่อรับรู้ฟังก์ชั่นการค้นหาคอมพิวเตอร์
1. ค้นหาโฟลเดอร์ที่มีชื่อต่อท้ายแบบกำหนดเอง
แพ็คเกจ cn.jasonfile01; นำเข้า Java.io.File; / ** * @author Jason * @September 18, 2016 เวลา 9:12:35 PM */ ชั้นเรียนสาธารณะ FindFiles04 {// การใช้ตัวแปรสมาชิกอย่างชาญฉลาด // ตัวแปรทางสถิติสามารถวางในตำแหน่งสมาชิก int countFile = 0; โมฆะคงที่สาธารณะหลัก (สตริง [] args) {// ห่อหุ้มวัตถุไฟล์ของไฟล์คลาสแม่แม่ = ไฟล์ใหม่ ("f: // api"); // กำหนดชื่อคำต่อท้ายของไฟล์ที่จะพบ String Suffix = ".pdf"; // เรียกวิธีการค้นหาไฟล์ scanfiles (parent, affix); // ส่งออกจำนวนไฟล์ที่ตรงกับเงื่อนไข System.out.println ("ไฟล์ที่ตรงตามเงื่อนไขคือ" + CountFile + ""); } / *** นี่คือการค้นหาไฟล์ที่ตรงตามเงื่อนไข* 1 รับไฟล์ย่อยและไดเรกทอรีย่อยทั้งหมดในไดเรกทอรีปัจจุบัน* 2 โหลดอาร์เรย์เพื่อตรวจสอบว่าไฟล์เหล่านั้นเป็นไฟล์* ใช่: เมื่อชื่อต่อท้ายเป็นที่พอใจ Scanfiles (ไฟล์พาเรนต์, สตริงต่อท้าย) {// รับไฟล์ย่อยทั้งหมดและไดเรกทอรีย่อยในไฟล์ไดเรกทอรีปัจจุบัน [] ไฟล์ = parent.listfiles (); // ป้องกันไฟล์ที่ไม่มีการเข้าถึงบนระบบจากการส่งคืนค่า null ถ้า (ไฟล์! = null) สำหรับ (ไฟล์ไฟล์: ไฟล์) {ถ้า (file.isfile () && file.getName (). endswith (คำต่อท้าย)) {system.out.println (file.getabsolutepath (); CountFile ++; } else scanfiles (ไฟล์, คำต่อท้าย); -2. ค้นหาโฟลเดอร์ที่มีชื่อต่อท้ายแบบกำหนดเอง
แพ็คเกจ cn.jasonfile01; นำเข้า Java.io.File; / ** * @author Jason * @September 18, 2016 เวลา 9:12:20 PM */ ชั้นเรียนสาธารณะ FindFolder {// กำหนดตัวแปรสถิติคงที่ int countFolder = 0; โมฆะคงที่สาธารณะหลัก (สตริง [] args) {// ห่อหุ้มวัตถุไฟล์ของไฟล์คลาสแม่แม่ = ไฟล์ใหม่ ("f: // a"); // กำหนดชื่อคำต่อท้ายของไฟล์ที่จะพบสตริงคำต่อท้าย = "1"; // โทรหาวิธีการค้นหาโฟลเดอร์ Scanfolder (Parent, Suffix); // ส่งออกจำนวนไดเรกทอรีที่ตรงกับเงื่อนไข System.out.println ("โฟลเดอร์ที่ตรงตามเงื่อนไขมี" + CountFolder + ""); } / *** นี่คือวิธีการค้นหาจำนวนโฟลเดอร์ที่ตรงตามเงื่อนไข* 1 รับไฟล์ย่อยทั้งหมดและไดเรกทอรีย่อยของพวกเขาในไดเรกทอรีปัจจุบัน* 2. สำรวจอาร์เรย์เพื่อตรวจสอบว่าพวกเขาเป็นไดเรกทอรี* ใช่: กลับมาอีกครั้ง scanfolder (ไฟล์ parent, string suffix) {// รับไดเรกทอรีย่อยทั้งหมดและไฟล์ย่อยในไฟล์ไดเรกทอรีพาเรนต์ [] ไฟล์ = parent.listfiles (); if (ไฟล์! = null) // traverse อาร์เรย์สำหรับการตัดสินสำหรับ (ไฟล์ไฟล์: ไฟล์) {ถ้า (file.isdirectory ()) scanfolder (ไฟล์, ต่อท้าย); } // เอาต์พุตไดเรกทอรีสำหรับเงื่อนไขการเช่าฟรีถ้า (parent.getName (). endswith (คำต่อท้าย)) {system.out.println (parent.getabsolutepath ()); CountFolder ++; -4. รหัสตระหนักถึงฟังก์ชั่นการลบที่สมบูรณ์ของคอมพิวเตอร์
หมายเหตุ: หากคุณลบใน Java โปรดใช้ด้วยความระมัดระวัง
แพ็คเกจ cn.jasonfile01; นำเข้า Java.io.File; คลาสสาธารณะ Clearall {โมฆะคงที่สาธารณะหลัก (สตริง [] args) {// ห่อหุ้มไดเรกทอรีหลักเป็นไฟล์ไฟล์ไฟล์ไฟล์ = ไฟล์ใหม่ ("f: // io แก้ไขชื่อไฟล์"); // เรียกวิธีการลบ Clearall (Parent); } / *** นี่คือวิธีการลบไดเรกทอรีย่อยทั้งหมดและไฟล์ย่อยในไดเรกทอรีหลัก* 1 รับไฟล์ย่อยและไดเรกทอรีย่อยทั้งหมดในไดเรกทอรีหลัก* 2. อาร์เรย์ตัวแปรและตรวจสอบว่าไฟล์* ใช่: ลบ* no: ซ้ำ* 3 ไฟล์เด็กและไดเรกทอรีย่อยในไฟล์ไดเรกทอรีหลัก [] ไฟล์ = parent.listfiles (); // 1. ป้องกันไม่ให้ไฟล์ระบบอยู่ในตำแหน่งและข้อยกเว้นตัวชี้ว่างเกิดขึ้น // 2 ป้องกันไม่ให้พา ธ ระบบจากไม่มีอยู่ทำให้อาร์เรย์เป็นโมฆะและข้อยกเว้นตัวชี้ว่างเกิดขึ้นถ้า (ไฟล์! = null) // traverse อาร์เรย์สำหรับ (ไฟล์ไฟล์: ไฟล์) {ถ้า (file.isfile ()) file.delete (); อื่น Clearall (ไฟล์); } // ลบ parent.delete (); -ข้างต้นเป็นเนื้อหาทั้งหมดของตัวอย่างของ Java IO เพื่อใช้ฟังก์ชั่นการค้นหาคอมพิวเตอร์และฟังก์ชั่นการลบที่นำมาให้คุณ ฉันหวังว่าทุกคนจะสนับสนุน wulin.com เพิ่มเติม ~