你說(shuō)的不太清楚, 遍歷隊(duì)列是數(shù)組 ?,集合 ,map還是其他什么
成都創(chuàng)新互聯(lián)公司網(wǎng)站建設(shè)公司是一家服務(wù)多年做網(wǎng)站建設(shè)策劃設(shè)計(jì)制作的公司,為廣大用戶提供了網(wǎng)站設(shè)計(jì)、網(wǎng)站建設(shè),成都網(wǎng)站設(shè)計(jì),廣告投放,成都做網(wǎng)站選成都創(chuàng)新互聯(lián)公司,貼合企業(yè)需求,高性價(jià)比,滿足客戶不同層次的需求一站式服務(wù)歡迎致電。
我就寫(xiě)個(gè)數(shù)組的給你, 你要其他的話說(shuō)明白了再寫(xiě)
public?class?Test?{
public?static?void?main(String[]?args)?{
//?定義數(shù)組
int[]?a?=?new?int[5];
//?初始化數(shù)組
for(int?i?=?0;?i??5;?i++){
a[i]?=?i?;
}
//?循環(huán)輸出數(shù)組
for(int?i?=?0;?i??5;?i++){
System.out.print(a[i]?+?"??")
}
}
}
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Scanner;
public class DemoTest05 {
public static void main(String[] args) {
/*
*確定數(shù)組的長(zhǎng)度
*/
Scanner sc = new Scanner(System.in);
System.out.println("請(qǐng)輸入數(shù)組的大?。?);
int num = sc.nextInt();
int[] arr1 = new int[num];
//逐個(gè)輸入
System.out.println("請(qǐng)逐個(gè)輸入數(shù)組元素,按回車鍵確定并繼續(xù)...");
for (int i = 0; i arr1.length; i++) {
arr1[i] = sc.nextInt();
}
//數(shù)組沒(méi)有重寫(xiě)toString方法,會(huì)直接打印數(shù)組的地址,使用Arrays工具類的toString方法輸出
System.out.println(Arrays.toString(arr1));
sc.nextLine();//過(guò)濾緩沖區(qū)中的回車
/*
不確定數(shù)組的長(zhǎng)度,使用ArrayList集合
*/
ListInteger list = new ArrayListInteger();
System.out.println("請(qǐng)輸入數(shù)組元素,元素間使用空格分隔,按回車鍵結(jié)束...");
String[] strings = sc.nextLine().split(" ");
for (int i = 0; i strings.length; i++) {
list.add(Integer.parseInt(strings[i]));
}
System.out.println(list);
}
}
我就不多說(shuō)了,直接上代碼吧:
/**
*?java遍歷一個(gè)目錄,輸出這個(gè)那些最少一個(gè)文件的那些目錄的絕對(duì)路徑,這道題如何用java代碼解決?
*
*?@param?args
*/
public?static?void?main(String[]?args)?{
//?設(shè)置文件目錄,?設(shè)置為user.dir目錄,便于測(cè)試
File?folder?=?new?File(System.getProperty("user.dir"));
System.out.println("根目錄:?"?+?folder.getAbsolutePath());
System.out.println("---------------------------------------------------------------------------");
displayAtLeastOneFileFolderPath(folder);
System.out.println("---------------------------------------------------------------------------");
}
/**
*?顯示?有一個(gè)文件以上的文件目錄
*?@param?file?文件或目錄
*/
private?static?void?displayAtLeastOneFileFolderPath(File?file)?{
if?(file?!=?null)?{
if?(file.isDirectory())?{???//?只有目錄才處理
File[]?files?=?file.listFiles();
int?fileCount?=?0;?//?文件數(shù)量,即不是文件夾的數(shù)量
if?(null?!=?files??files.length??0)?{
for?(File?subFile?:?files)?{
if?(subFile.isFile())?{
fileCount?++;?//?文件數(shù)目加一
}?else?{
//?繼續(xù)檢查下面的文件夾
displayAtLeastOneFileFolderPath(subFile);
}
}
}
if?(fileCount??0)?{????//?說(shuō)明有文件,需要顯示文件夾的全路徑
System.out.println(file.getAbsolutePath()?+?":?共有文件?"?+?fileCount?+?"?個(gè)!");
}
}
}
}
在我機(jī)器上的運(yùn)行結(jié)果為:
首先,啊,我的眼睛!請(qǐng)學(xué)會(huì)截圖,你的這三張圖我一張都看不清!
然后我想了一下你的目的,你現(xiàn)在有一個(gè)學(xué)生信息數(shù)組,你是要把他們寫(xiě)到一個(gè)文件里是吧,這個(gè)過(guò)程叫做數(shù)據(jù)序列化或者持久化(其實(shí)文件中保存成json串或xml的形式更容易閱讀數(shù)據(jù)和反序列化)因?yàn)榭床磺迥愕某绦?,所以我舉了個(gè)例子給你看下,給你些思路。
我定義一個(gè)學(xué)生類,包括姓名和分?jǐn)?shù)兩個(gè)屬性:
之后在main函數(shù)中構(gòu)造擁有三個(gè)學(xué)生的學(xué)生信息數(shù)組:
然后使用FileOutputStream、OutputStreamWriter、BufferedWriter完成文件的寫(xiě)入:
流的使用方式我就不多說(shuō)了,記住流一定要關(guān)閉,最好實(shí)在finally塊中進(jìn)行,另外先打開(kāi)的流后關(guān)閉。
主要看寫(xiě)文件內(nèi)容的部分:
其實(shí)就是循環(huán)數(shù)組,使用bufferWrite的write方法,將我們的數(shù)據(jù)按照想要的格式弄成字符串,建議使用StringBuilder來(lái)構(gòu)建文件字符串內(nèi)容,我這里偷懶了直接用的+來(lái)操作,最后適時(shí)地?fù)Q行。
最終生成的文件內(nèi)容為:
完整main函數(shù)代碼:
public static void main(String[] args) throws Exception {
Student s1 = new Student("張三", 90);
Student s2 = new Student("李四", 59);
Student s3 = new Student("王五", 85);
Student[] students = new Student[]{s1, s2, s3};
String filePath = "d:\\student.txt";
FileOutputStream fileOutputStream = null;
OutputStreamWriter outputStreamWriter = null;
BufferedWriter bufferedWriter = null;
try {
fileOutputStream = new FileOutputStream(filePath);
outputStreamWriter = new OutputStreamWriter(fileOutputStream, "UTF-8");
bufferedWriter = new BufferedWriter(outputStreamWriter);
for (int i = 0; i students.length; i++) {
bufferedWriter.write(students[i].getName() + " " + students[i].getGrade());
if (i students.length - 1) {
bufferedWriter.newLine();
}
}
} finally {
if (bufferedWriter != null) {
bufferedWriter.close();
}
if (outputStreamWriter != null) {
outputStreamWriter.close();
}
if (fileOutputStream != null) {
fileOutputStream.close();
}
}
}