JAVA文本字符統(tǒng)計(jì)代碼,java文本字符統(tǒng)計(jì)代碼有哪些

利用Java語言代碼輸入一行字符分別統(tǒng)計(jì)其中英文字母、空格、數(shù)字和其他字符的個(gè)數(shù)。

123456789101112131415161718192021222324

創(chuàng)新互聯(lián)建站專注于建始網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠(chéng)為您提供建始營(yíng)銷型網(wǎng)站建設(shè),建始網(wǎng)站制作、建始網(wǎng)頁設(shè)計(jì)、建始網(wǎng)站官網(wǎng)定制、小程序開發(fā)服務(wù),打造建始網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供建始網(wǎng)站排名全網(wǎng)營(yíng)銷落地服務(wù)。

public?static?void?main(String[]?args)?throws?IOException?{????????BufferedReader?br=new?BufferedReader(new?InputStreamReader(System.in));????????String?str=br.readLine();?????????int?countNum?=?0;//統(tǒng)計(jì)數(shù)字的個(gè)數(shù)????????int?countChar?=?0;//統(tǒng)計(jì)英文字母的個(gè)數(shù)????????int?countSpace?=?0;//統(tǒng)計(jì)空格的個(gè)數(shù)????????int?countOthers?=?0;//統(tǒng)計(jì)其它字符的個(gè)數(shù)????????for?(int?i?=?0;?i??str.length();?i++)?{????????????char?c?=?str.charAt(i);????????????if?(c?=?'0'??(int)?c?=?'9')?{????????????????countNum++;????????????}?else?if?((c?=?'a'??c?=?'z')||(c?=?'A'??c?=?'Z'))?{????????????????countChar++;????????????}?else?if?(c?==?'?')?{????????????????countSpace++;????????????}?else{????????????????countOthers++;????????????}????????}????????System.out.println("數(shù)字個(gè)數(shù):"+countNum);????????System.out.println("英文字母?jìng)€(gè)數(shù):"+countChar);????????System.out.println("空格個(gè)數(shù):"+countSpace);????????System.out.println("其他字符個(gè)數(shù):"+countOthers);????}

一、問題分析:

輸入一行字母,那么會(huì)以換行結(jié)束。所以可以存入數(shù)組,也可以逐個(gè)輸入,遇到換行結(jié)束。

要統(tǒng)計(jì)各個(gè)類的個(gè)數(shù),就要逐個(gè)判斷是哪個(gè)分類的。

由于在ASCII碼中,數(shù)字,大寫字母,小寫字母分別連續(xù),所以可以根據(jù)邊界值判斷類型。

二、算法設(shè)計(jì):

1、讀入字符,直到遇到換行結(jié)束。

2、對(duì)于每個(gè)字符,判斷是字母還是數(shù)字,或者空格,或者是其它字符。

3、對(duì)于每個(gè)字符判斷后,對(duì)應(yīng)類別計(jì)數(shù)器自加。

4、最終輸出結(jié)果。

java統(tǒng)計(jì)串中字符個(gè)數(shù)的代碼解釋

整個(gè)代碼就是為了統(tǒng)計(jì)字符串中各個(gè)字符出現(xiàn)的個(gè)數(shù)

Map

result

=

getCharMaps(s);

這個(gè)方法調(diào)用

主要是看這個(gè)方法

public

static

Map

getCharMaps(String

s)

{

Map

map

=

new

HashMap();

//定義一個(gè)map

for(int

i

=

0;

i

s.length();

i++)

{

//

下面的代碼主要是循環(huán)字符串,一次取出每一個(gè)字符

Character

c

=

s.charAt(i);

//獲取對(duì)應(yīng)的字符

Integer

count

=

map.get(c);

//獲取字符對(duì)應(yīng)出現(xiàn)的次數(shù)

map.put(c,

count

==

null

?

1

:

count

+

1);

//如果之前出現(xiàn)過,則加1,否則直接賦1

}

return

map;

//返回最終的map

}

用JAVA編寫一個(gè)程序,統(tǒng)計(jì)一個(gè)文本文件中字符A的個(gè)數(shù)

import?java.io.BufferedReader;

import?java.io.File;

import?java.io.FileNotFoundException;

import?java.io.FileReader;

import?java.io.IOException;

import?java.util.Scanner;

public?class?Count?{

public?static?void?main(String[]?args)?{

System.out.println("Please?input?the?path?of?the?file:");

Scanner?scanner?=?new?Scanner(System.in);

String?path?=?scanner.nextLine();

scanner.close();

File?file?=?new?File(path);

char?des?=?'A';

int?count?=?process(file,?des);

System.out.println("字符"?+?des?+?"在文中出現(xiàn)的次數(shù)為:"?+?count);

}

public?static?int?process(File?file,?char?c)?{

int?count?=?0;

BufferedReader?br?=?null;

try?{

br?=?new?BufferedReader(new?FileReader(file));

String?temp?=?"";

while?((temp?=?br.readLine())?!=?null)?{

char[]?des?=?temp.trim().toCharArray();

for?(int?i?=?0;?i??des.length;?i++)?{

if?(des[i]?==?c){

count++;

}

}

}

}?catch?(FileNotFoundException?e)?{

e.printStackTrace();

}?catch?(IOException?e)?{

e.printStackTrace();

}?finally?{

try?{

br.close();

}?catch?(IOException?e)?{

e.printStackTrace();

}

}

return?count;

}

}

測(cè)試文件:

運(yùn)行截圖:

PS:代碼對(duì)于題中文件和查找字符已經(jīng)單獨(dú)封裝成一個(gè)方法,可以靈活改動(dòng)所需要查找的文件和查找的字符。

編寫java程序統(tǒng)計(jì)字符個(gè)數(shù)。

public static void main(String[] args) {

// TODO Auto-generated method stub

int abcCount=0;//英文字母?jìng)€(gè)數(shù)

int spaceCount=0;//空格鍵個(gè)數(shù)

int numCount=0;//數(shù)字個(gè)數(shù)

int otherCount=0;//其他字符個(gè)數(shù)

Scanner scan=new Scanner(System.in);

String str=scan.nextLine();

char[] ch = str.toCharArray();

for(int i=0;ich.length;i++){

if(Character.isLetter(ch[i])){

//判斷是否字母

abcCount++;

}

else if(Character.isDigit(ch[i])){

//判斷是否數(shù)字

numCount++;

}

else if(Character.isSpaceChar(ch[i])){

//判斷是否空格鍵

spaceCount++;

}

else{

//以上都不是則認(rèn)為是其他字符

otherCount++;

}

}

System.out.println("字母?jìng)€(gè)數(shù):"+abcCount);

System.out.println("數(shù)字個(gè)數(shù):"+numCount);

System.out.println("空格個(gè)數(shù):"+spaceCount);

System.out.println("其他字符個(gè)數(shù):"+otherCount);

求大神教我,java語言里的字?jǐn)?shù)統(tǒng)計(jì)功能的代碼?

其實(shí)直接把要統(tǒng)計(jì)的字?jǐn)?shù)放在一個(gè)字符串里就行了string str = "";

然后再用string的length方法就可以統(tǒng)計(jì)字符串長(zhǎng)度了。

string str = "xxxxx";

int strlen = str.length();

system.out.print(strlen);

打印出來的數(shù)字就是所輸入的字?jǐn)?shù)(這里是包括標(biāo)點(diǎn)符號(hào)的,如果要去標(biāo)點(diǎn)空格可以用正則表達(dá)式)

分享題目:JAVA文本字符統(tǒng)計(jì)代碼,java文本字符統(tǒng)計(jì)代碼有哪些
瀏覽路徑:http://muchs.cn/article44/hschee.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導(dǎo)航、微信公眾號(hào)面包屑導(dǎo)航、網(wǎng)站改版定制網(wǎng)站、外貿(mào)網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

綿陽服務(wù)器托管