最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java在算法題中的輸入問題實(shí)例詳解

 更新時(shí)間:2022年02月20日 07:48:25   作者:foldn  
在校招筆試中,有的時(shí)候我們要自己設(shè)計(jì)輸入輸出,所以下面這篇文章主要給大家介紹了關(guān)于Java在算法題中的輸入問題,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下

前言

在寫算法題的時(shí)候,經(jīng)常因?yàn)閿?shù)據(jù)的輸入問題而導(dǎo)致卡殼,其中最常見的就是數(shù)據(jù)輸入無法結(jié)束。

1.給定范圍,確定輸入幾個(gè)數(shù)據(jù)

直接使用普通的Scanner輸入數(shù)據(jù)范圍,然后使用for循環(huán)輸入后續(xù)數(shù)據(jù)。

例如:

Scanner scanner = new Scanner(System.in);
//輸入數(shù)據(jù)的范圍
int n = scanner.nextInt();
for(int i = 0;i < n;i++){
    
    arrays[i] = scanner.nextInt();
}

2.沒有給定范圍,但是給出了結(jié)束符

使用while循環(huán),當(dāng)輸入結(jié)束符的時(shí)候退出循環(huán)

Scanner scanner = new Scanner(System.in);
//假設(shè)使用"0"作為結(jié)束符
//無限循環(huán),在循環(huán)中和結(jié)束符進(jìn)行比較,相同則停止循環(huán)
while(true){
    String str = scanner,nextLine();
    if(str == "0"){
        break;
    }
    //沒有結(jié)束,那么對(duì)str進(jìn)行處理
    
}
//判斷輸入的數(shù)據(jù)是否為"0",為"0"則停止循環(huán),不為"0"則繼續(xù)循環(huán)
while(!scanner.hasNext("0")){
    String str = scanner.nextLine();
    //對(duì)str進(jìn)行處理,只要輸入不為"0",就可以一直循環(huán)下去
}

3.沒有給定范圍,直接給定多組數(shù)據(jù)(這個(gè)最需要注意)

此時(shí)不能在使用Scanner進(jìn)行輸入,因?yàn)闊o法結(jié)束,我們需要使用(BufferedReader)字符緩沖輸入流來進(jìn)行輸入。

BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
while((str = br.readLine()) != null){
            //當(dāng)讀入數(shù)據(jù)的下一行不為空時(shí),進(jìn)行循環(huán),這里對(duì)str進(jìn)行處理
        }

4.Scanner中next()和nextLine()的區(qū)別

next()輸入不會(huì)包含空格以后的數(shù)據(jù),只會(huì)輸入第一個(gè)空格前的字符,nextLine()輸入可以包括空格,只有遇見分隔符(例如回車)才會(huì)結(jié)束

Scanner scanner = new Scanner(System.in);
String str1 = scanner.next();//輸入hello world
String str2 = Scanner.nextLine();//輸入hello world
System.out.println(str1);//輸出hello
System.out.println(str2);//輸出hello world

5.輸入多行數(shù)字,未知行數(shù)

沒有對(duì)一行多數(shù)字做處理,處理方法和上述但行輸入相同。

System.out.println("輸入多行數(shù)字:");
        List<String> list = new ArrayList<>();

        String input = "";
        while (true) {
            input = sc.nextLine();
            if (!input.equals("q")) {
                list.add(input);
            }else {
                break;
            }
        }
        for (String s : list) {
            //只能轉(zhuǎn)換一行一個(gè)數(shù)字,多個(gè)數(shù)字需要額外同上的操作
            //int intValue = Integer.valueOf(s);
            System.out.println(s);
        }

總結(jié)

到此這篇關(guān)于Java在算法題中的輸入問題的文章就介紹到這了,更多相關(guān)Java算法題輸入問題內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • SpringBoot + 微信公眾號(hào)JSAPI支付功能的實(shí)現(xiàn)

    SpringBoot + 微信公眾號(hào)JSAPI支付功能的實(shí)現(xiàn)

    這篇文章主要介紹了SpringBoot + 微信公眾號(hào)JSAPI支付功能的實(shí)現(xiàn),本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-03-03
  • springmvc+mybatis 做分頁sql 語句實(shí)例代碼

    springmvc+mybatis 做分頁sql 語句實(shí)例代碼

    本文通過一段實(shí)例代碼給大家介紹了springmvc+mybatis 做分頁sql 語句的方法,代碼簡(jiǎn)單易懂,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友參考下吧
    2017-07-07
  • mybatis中批量插入的兩種方式(高效插入)

    mybatis中批量插入的兩種方式(高效插入)

    MyBatis是一個(gè)支持普通SQL查詢,存儲(chǔ)過程和高級(jí)映射的優(yōu)秀持久層框架。這篇文章主要介紹了mybatis中批量插入的兩種方式(高效插入)的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,感興趣的朋友一起看看吧
    2016-09-09
  • 淺談spring-boot 允許接口跨域并實(shí)現(xiàn)攔截(CORS)

    淺談spring-boot 允許接口跨域并實(shí)現(xiàn)攔截(CORS)

    本篇文章主要介紹了淺談spring-boot 允許接口跨域并實(shí)現(xiàn)攔截(CORS),具有一定的參考價(jià)值,有興趣的可以了解一下
    2017-08-08
  • Springboot整合Spring Cloud Kubernetes讀取ConfigMap支持自動(dòng)刷新配置的教程

    Springboot整合Spring Cloud Kubernetes讀取ConfigMap支持自動(dòng)刷新配置的教程

    這篇文章主要介紹了Springboot整合Spring Cloud Kubernetes讀取ConfigMap支持自動(dòng)刷新配置,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-09-09
  • Map如何根據(jù)key指定條件進(jìn)行過濾篩選

    Map如何根據(jù)key指定條件進(jìn)行過濾篩選

    這篇文章主要介紹了Map如何根據(jù)key指定條件進(jìn)行過濾篩選問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-09-09
  • Spring中實(shí)現(xiàn)策略模式的幾種方式小結(jié)

    Spring中實(shí)現(xiàn)策略模式的幾種方式小結(jié)

    在寫業(yè)務(wù)代碼的時(shí)候,難免會(huì)遇到很多if-else,這個(gè)時(shí)候如果if-else不是很多可以用if-else,如果此時(shí)場(chǎng)景過多,太多的if-else會(huì)導(dǎo)致代碼比較臃腫,這個(gè)時(shí)候策略模式就出現(xiàn)了,本文主要闡述工作中常用的實(shí)現(xiàn)策略模式的幾種方式,需要的朋友可以參考下
    2024-05-05
  • Java中List集合的常用方法詳解

    Java中List集合的常用方法詳解

    這篇文章主要為大家詳細(xì)介紹了Java中List集合的常用方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-02-02
  • Spring如何使用@Indexed加快啟動(dòng)速度

    Spring如何使用@Indexed加快啟動(dòng)速度

    這篇文章主要介紹了Spring如何使用@Indexed加快啟動(dòng)速度,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-11-11
  • Java獲取漢字對(duì)應(yīng)的拼音(全拼或首字母)

    Java獲取漢字對(duì)應(yīng)的拼音(全拼或首字母)

    這篇文章主要介紹了Java如何獲取漢字對(duì)應(yīng)的拼音(全拼或首字母),文中實(shí)現(xiàn)的方法是引用了pinyin4j-2.5.0.jar,然后給出了完整的示例代碼,有需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-01-01

最新評(píng)論

伊宁县| 得荣县| 铜山县| 扎赉特旗| 上杭县| 宾阳县| 基隆市| 赤壁市| 乃东县| 蓬溪县| 壤塘县| 阜新| 康乐县| 林周县| 盐源县| 额济纳旗| 武威市| 通山县| 股票| 新疆| 天柱县| 隆化县| 桐城市| 介休市| 鲁山县| 上饶县| 通河县| 江津市| 绥德县| 大渡口区| 阳城县| 锡林郭勒盟| 商丘市| 金塔县| 康保县| 苍梧县| 封丘县| 石嘴山市| 行唐县| 滨海县| 项城市|