成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Java? 教程(掃描)

dantezhao / 1852人閱讀

掃描

編程I/O通常涉及轉(zhuǎn)換人們喜歡使用的整齊格式的數(shù)據(jù),為了幫助你完成這些工作,Java平臺提供了兩個API,掃描器API將輸入分解為與數(shù)據(jù)位相關(guān)聯(lián)的單個標(biāo)記,格式化API將數(shù)據(jù)組裝成格式良好、可讀的形式。

Scanner類型的對象對于將格式化輸入分解為標(biāo)記并根據(jù)其數(shù)據(jù)類型轉(zhuǎn)換單個標(biāo)記非常有用。

將輸入分解為標(biāo)記

默認(rèn)情況下,掃描器使用空格分隔標(biāo)記(空格字符包括空格、制表符和行終止符,有關(guān)完整列表,請參閱Character.isWhitespace的文檔),要了解掃描的工作原理,讓我們看看ScanXan,這是一個讀取xanadu.txt中單個單詞并打印出來的程序,每行一個單詞。

import java.io.*;
import java.util.Scanner;

public class ScanXan {
    public static void main(String[] args) throws IOException {

        Scanner s = null;

        try {
            s = new Scanner(new BufferedReader(new FileReader("xanadu.txt")));

            while (s.hasNext()) {
                System.out.println(s.next());
            }
        } finally {
            if (s != null) {
                s.close();
            }
        }
    }
}

請注意,ScanXan在使用掃描器對象完成后會調(diào)用Scannerclose方法,即使掃描器不是流,你也需要將其關(guān)閉以指示你已完成其底層流。

ScanXan的輸出如下所示:

In
Xanadu
did
Kubla
Khan
A
stately
pleasure-dome
...

要使用其他標(biāo)記分隔符,請調(diào)用useDelimiter(),指定正則表達(dá)式,例如,假設(shè)你希望標(biāo)記分隔符為逗號,可選地后跟空格,你會調(diào)用:

s.useDelimiter(",s*");
轉(zhuǎn)換單個標(biāo)記

ScanXan示例將所有輸入標(biāo)記視為簡單的String值,Scanner還支持所有Java語言的原始類型(char除外)的標(biāo)記,以及BigIntegerBigDecimal,此外,數(shù)值可以使用數(shù)千個分隔符。因此,在美國語言環(huán)境中,Scanner將字符串“32,767”正確地讀取為一個整數(shù)值。

我們必須提到語言環(huán)境,因為千位分隔符和小數(shù)符號是特定于語言環(huán)境的,因此,如果我們未指定掃描器應(yīng)使用美國語言環(huán)境,則以下示例將無法在所有語言環(huán)境中正常運(yùn)行。這通常不必?fù)?dān)心,因為你的輸入數(shù)據(jù)通常來自使用相同語言環(huán)境的源,但是這個例子是Java教程的一部分,并且分布在世界各地。

ScanSum示例讀取double值列表并將其相加,這是源碼:

import java.io.FileReader;
import java.io.BufferedReader;
import java.io.IOException;
import java.util.Scanner;
import java.util.Locale;

public class ScanSum {
    public static void main(String[] args) throws IOException {

        Scanner s = null;
        double sum = 0;

        try {
            s = new Scanner(new BufferedReader(new FileReader("usnumbers.txt")));
            s.useLocale(Locale.US);

            while (s.hasNext()) {
                if (s.hasNextDouble()) {
                    sum += s.nextDouble();
                } else {
                    s.next();
                }   
            }
        } finally {
            s.close();
        }

        System.out.println(sum);
    }
}

這是示例輸入文件usnumbers.txt。

8.5
32,767
3.14159
1,000,000.1

輸出字符串是“1032778.74159”,在某些語言環(huán)境中,句點(diǎn)將是不同的字符,因為System.outPrintStream對象,并且該類不提供重寫默認(rèn)語言環(huán)境的方法,我們可以覆蓋整個程序的語言環(huán)境 — 或者我們可以只使用格式化,如下一個主題格式化中所述。

上一篇:緩沖流 下一篇:格式化流

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/72964.html

相關(guān)文章

  • Spring Boot 2.x基礎(chǔ)教程:工程結(jié)構(gòu)推薦

    摘要:典型示例以下結(jié)構(gòu)是比較推薦的組織方式,所有的類和其他都在之下。應(yīng)用主類,該類直接位于下。默認(rèn)情況下,的應(yīng)用主類會自動掃描以及所有子包下的所有類來進(jìn)行初始化。 Spring Boot框架本身并沒有對工程結(jié)構(gòu)有特別的要求,但是按照最佳實(shí)踐的工程結(jié)構(gòu)可以幫助我們減少可能會遇見的坑,尤其是Spring包掃描機(jī)制的存在,如果您使用最佳實(shí)踐的工程結(jié)構(gòu),可以免去不少特殊的配置工作。 典型示例 以下結(jié)...

    CollinPeng 評論0 收藏0
  • Java零基礎(chǔ)入門筆記|原來學(xué)Java可以這么簡單

    摘要:剛開始學(xué)習(xí)的時候,可能是一頭霧水,不知道從何學(xué)起。這個教程總體來說就像列文虎克教學(xué),細(xì)到極致,妙到毫巔。適合絕對零基礎(chǔ)的,每個知識點(diǎn)掰開了揉碎了講解。 剛開始學(xué)習(xí)java的時候,可能是一頭霧水,不知道從何學(xué)起。還有很多Java小白,在剛自學(xué)Java的時候玩命的學(xué)習(xí),玩命的記住Java原理,天天早上五點(diǎn)起床背Java的一些英...

    2bdenny 評論0 收藏0
  • 通過Web安全工具Burp suite找出網(wǎng)站中的XSS漏洞實(shí)戰(zhàn)(二)

    摘要:一背景筆者月份在慕課網(wǎng)錄制視頻教程跨站漏洞加強(qiáng)安全里面需要講到很多實(shí)戰(zhàn)案例,在漏洞挖掘案例中分為了手工挖掘工具挖掘代碼審計三部分內(nèi)容手工挖掘篇參考地址為快速找出網(wǎng)站中可能存在的漏洞實(shí)踐一本文主要記錄利用安全工具進(jìn)行漏洞挖掘部分,分為了設(shè)置代 一、背景 筆者6月份在慕課網(wǎng)錄制視頻教程XSS跨站漏洞 加強(qiáng)Web安全,里面需要講到很多實(shí)戰(zhàn)案例,在漏洞挖掘案例中分為了手工挖掘、工具挖掘、代碼審...

    klinson 評論0 收藏0
  • 信安 - 收藏集 - 掘金

    摘要:咱媽說別亂點(diǎn)鏈接之淺談攻擊閱讀掘金作者馬達(dá)編輯迷鹿馬達(dá),精通開發(fā)開發(fā),擅長接口設(shè)計以及平臺化建設(shè),獨(dú)自主導(dǎo)過多個產(chǎn)品。一題目購物應(yīng)用分環(huán)境要求安全學(xué)習(xí)資料匯總掘金安全學(xué)習(xí)資料匯總安全學(xué)習(xí)網(wǎng)站收集 咱媽說別亂點(diǎn)鏈接之淺談 CSRF 攻擊 - 閱讀 - 掘金作者 | 馬達(dá)編輯 | 迷鹿 馬達(dá), 精通PHP開發(fā)、Web開發(fā),擅長api接口設(shè)計以及平臺化建設(shè),獨(dú)自主導(dǎo)過多個Web產(chǎn)品。目前就職...

    lushan 評論0 收藏0

發(fā)表評論

0條評論

閱讀需要支付1元查看
<