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

java Split 實(shí)現(xiàn)去除一個(gè)空格和多個(gè)空格

 更新時(shí)間:2020年10月20日 09:21:13   作者:蜀人ing  
這篇文章主要介紹了java Split 實(shí)現(xiàn)去除一個(gè)空格和多個(gè)空格,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧

用Split函數(shù)可以去除輸入一個(gè)字符串中的空格,并且一般都是將它存儲在一個(gè)字符串?dāng)?shù)組之中

例如:

import java.util.Scanner; 
public class Main { 
 
 public static void main(String[] args) { 
  Scanner in = new Scanner(System.in); 
  String s=in.nextLine(); //如果我輸入:0 1 2 3 4
  String[] str=s.split(" ");
  System.out.println(s);
  System.out.println(str[3]);
  
 } 
} 

輸出結(jié)果是:

0 1 2 3 4

3

可是會出現(xiàn)這種情況,如果我輸入的是0 1 2 3 4,在2和3之間有3個(gè)的空格,那還會有用嗎?

結(jié)果輸出是:

0 1 2 (空格) 3 4

(空格)

也就是沒有輸出str[3],至少看上去是這樣的,然后我分析得出結(jié)論,其實(shí)是這樣的,

舉個(gè)例子,我輸入2(空)(空)(空)3,執(zhí)行Split函數(shù)后得到的String str數(shù)組

是str[0]=2 ,str[1]=(空),str[2]=(空),str[3]=3

也就是說,Split函數(shù)在執(zhí)行多空格判斷時(shí),會只將第一個(gè)空格忽略,其余空格都放入數(shù)組,直到遇到非空格數(shù)3,然后后面的情況重復(fù),只有一個(gè)空格,情況是結(jié)果是理想的,多個(gè)空格,又是重復(fù)如此

解決方法:

import java.util.Scanner; 
public class Main { 
 
 public static void main(String[] args) { 
  Scanner in = new Scanner(System.in); 
  String s=in.nextLine();
  String[] str=s.split("\\s+ "); //改動這里
  System.out.println(s);
  System.out.println(str[3]);
  
 } 
} 

利用正則表達(dá)式,就可以實(shí)現(xiàn)我們理想的結(jié)果,

例如:輸入2(空)(空)(空)3

結(jié)果:

str[0]=2

str[1]=3

補(bǔ)充知識:Java 鍵盤輸入數(shù)字(空格隔開) 將數(shù)字存入數(shù)組

Scanner方法

核心是單行輸入字符串,切割字符串中的空格,存入數(shù)組

Scanner s = new Scanner(System.in);
String inputStr = s.nextLine();
String[] strArray = inputStr.split(" ");
int[] num = new int[strArray.length];
for(int i = 0 ; i < num.length ; i++){
 num[i] = Integer.parseInt(strArray[i]);
}

Scanner輸入的一個(gè)問題:在Scanner類中如果我們在任何7個(gè)nextXXX()方法之后調(diào)用nextLine()方法,這nextLine()方法不能夠從控制臺讀取任何內(nèi)容,并且,這游標(biāo)不會進(jìn)入控制臺,它將跳過這一步。nextXXX()方法包括nextInt(),nextFloat(), nextByte(),nextShort(),nextDouble(),nextLong(),next()。此時(shí)應(yīng)該使用BufferedReader。 ?

BufferedReader方法

首行輸入數(shù)組大小,次行輸入數(shù)組內(nèi)容,依次用空格隔開。

它的優(yōu)勢在于消耗比scanner更少的內(nèi)存和時(shí)間,如果在寫算法時(shí)優(yōu)先使用BufferedReader方法。

注意:使用完記得close,Scanner方法不需要close。

public static int[] ListInput() throws IOException {
 BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
 int N = 0;
 String str = null;
 N= Integer.parseInt(br.readLine());
 str = br.readLine(); 
 br.close();
 int[] myList = new int[N];
 String[] strArray = str.split(" "); 
 for (int i = 0; i < N; i++) {
 myList[i] = Integer.parseInt(strArray[i]);
 }
 return myList;
}
···

以上這篇java Split 實(shí)現(xiàn)去除一個(gè)空格和多個(gè)空格就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • java結(jié)束進(jìn)程的實(shí)例代碼

    java結(jié)束進(jìn)程的實(shí)例代碼

    java結(jié)束程序進(jìn)程的方法很簡單,只要一句代碼就行,大家參考使用吧
    2013-12-12
  • IDEA自定義Maven archetype的方法步驟

    IDEA自定義Maven archetype的方法步驟

    在創(chuàng)建Maven的項(xiàng)目時(shí)我們發(fā)現(xiàn)了一個(gè)很不方便的問題,就是每次創(chuàng)建Maven的工程的時(shí)候,都需要選擇一個(gè)骨架,本文主要介紹了IDEA自定義Maven archetype的方法步驟,感興趣的可以了解一下
    2022-03-03
  • java并發(fā)編程死鎖定義及如何避免死鎖

    java并發(fā)編程死鎖定義及如何避免死鎖

    這篇文章主要為大家介紹了java并發(fā)編程中死鎖的詳細(xì)說明及如何避免死鎖的方法,有需要的朋友可以借鑒參考下希望能夠有所幫助,祝大家多多進(jìn)步
    2022-02-02
  • JVM Metaspace內(nèi)存溢出問題解決方案

    JVM Metaspace內(nèi)存溢出問題解決方案

    這篇文章主要介紹了JVM Metaspace內(nèi)存溢出排查總結(jié)過程圖解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-11-11
  • Spring @Transactional注解失效解決方案

    Spring @Transactional注解失效解決方案

    這篇文章主要介紹了Spring @Transactional注解失效解決方案,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-12-12
  • Springboot @Value注入boolean設(shè)置默認(rèn)值方式

    Springboot @Value注入boolean設(shè)置默認(rèn)值方式

    這篇文章主要介紹了Springboot @Value注入boolean設(shè)置默認(rèn)值方式,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-03-03
  • Java中從Integer到Date的轉(zhuǎn)換方法

    Java中從Integer到Date的轉(zhuǎn)換方法

    這篇文章主要介紹了Java中integer怎么轉(zhuǎn)換date,在Java中,如果我們有一個(gè)Integer類型的數(shù)據(jù),想要將其轉(zhuǎn)換為Date類型,本文給大家介紹了實(shí)現(xiàn)方法,并通過代碼示例講解的非常詳細(xì),需要的朋友可以參考下
    2024-05-05
  • Java GZIPOutputStream流壓縮文件的操作

    Java GZIPOutputStream流壓縮文件的操作

    這篇文章主要介紹了Java GZIPOutputStream流壓縮文件的操作,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-02-02
  • Springboot遷移到Micronaut實(shí)現(xiàn)過程詳解

    Springboot遷移到Micronaut實(shí)現(xiàn)過程詳解

    這篇文章主要為大家?介紹了Springboot遷移到Micronaut實(shí)現(xiàn)過程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-05-05
  • SpringCloud?微服務(wù)數(shù)據(jù)權(quán)限控制的實(shí)現(xiàn)

    SpringCloud?微服務(wù)數(shù)據(jù)權(quán)限控制的實(shí)現(xiàn)

    這篇文章主要介紹的是權(quán)限控制的數(shù)據(jù)權(quán)限層面,意思是控制可訪問數(shù)據(jù)資源的數(shù)量,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2021-11-11

最新評論

吐鲁番市| 华坪县| 哈尔滨市| 宁德市| 鲁山县| 翼城县| 方城县| 郁南县| 中牟县| 柳江县| 宜昌市| 宁海县| 庄河市| 兰考县| 九龙县| 缙云县| 尼勒克县| 克拉玛依市| 图们市| 清远市| 林西县| 盐池县| 五台县| 门头沟区| 新化县| 抚远县| 巍山| 全南县| 萨迦县| 兴化市| 上犹县| 凤台县| 揭西县| 兴安县| 阿尔山市| 靖远县| 依兰县| 宁明县| 禄劝| 南召县| 鄂尔多斯市|