import java.util.*;
public class ScannerTest {
Scanner scanner=new Scanner(System.in);
double a=scanner.nextDouble();
System.out.println(a);
}
}
import java.io.*;
public class ScannerTest {
public static void main(String[] args) throws IOException{//這裏涉及到文件io操作
double sum=0.0;
int count=0;
FileWriter fout=new FileWriter("text.txt");
fout.write("2 2.2 3 3.3 4 4.5 done");//往文件裏寫入這一字符串
fout.close();
FileReader fin=new FileReader("text.txt");
Scanner scanner=new Scanner(fin);//注意這裏的參數是FileReader類型的fin
while(scanner.hasNext()){//如果有內容
if(scanner.hasNextDouble()){//如果是數字
sum=sum+scanner.nextDouble();
count++;
}else{
String str=scanner.next();
if(str.equals("done")){
break;
}else{
System.out.println("文件格式錯誤!");
return;
}
}
}
fin.close();
System.out.println("文件中數據的平均數是:"+sum/count);
}
}
這段程序的功能是將"2 2.2 3 3.3 4 4.5 done"寫入文件scanner讀取文件中的數直到done結束。並求出數字的平均值,比較有意思的是scanner會自動一空格作爲分割符區分不同數字。當然也可以通過scanner.useDelimiter(Pattern pattern)來設置不同的分割符,比如 scanner.useDelimiter(",*");
本文出自 “Xhinker” 博客,請務必保留此出處http://xhinker.blog.51cto.com/640011/133575