java接收用戶輸入的字符,可以使用BufferedReader 類,如下代碼:
10多年專注成都網(wǎng)站制作,企業(yè)網(wǎng)站設(shè)計(jì),個(gè)人網(wǎng)站制作服務(wù),為大家分享網(wǎng)站制作知識(shí)、方案,網(wǎng)站設(shè)計(jì)流程、步驟,成功服務(wù)上千家企業(yè)。為您提供網(wǎng)站建設(shè),網(wǎng)站制作,網(wǎng)頁(yè)設(shè)計(jì)及定制高端網(wǎng)站建設(shè)服務(wù),專注于企業(yè)網(wǎng)站設(shè)計(jì),高端網(wǎng)頁(yè)制作,對(duì)建筑動(dòng)畫(huà)等多個(gè)領(lǐng)域,擁有豐富的網(wǎng)站運(yùn)維經(jīng)驗(yàn)。
package?com.qiu.lin.he;
import?java.io.BufferedReader;
import?java.io.IOException;
import?java.io.InputStreamReader;
public?class?Ceshi?{
public?static?void?main(String[]?args)?{
BufferedReader?br?=?new?BufferedReader(new?InputStreamReader(System.in));//新建scanner類
String?in?=?null;
try?{
System.out.println("請(qǐng)輸入一串字符");
in?=?br.readLine();
}?catch?(IOException?e)?{
e.printStackTrace();
}
System.out.println(in);
}
}
運(yùn)行結(jié)果如下:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
// 創(chuàng)建Scanner對(duì)象,用于獲取用戶輸入
Scanner scanner = new Scanner(System.in);
System.out.print("請(qǐng)輸入任意字符序列:");
// 獲取用戶輸入的字符序列
String str = scanner.nextLine();
// 循環(huán)遍歷字符序列中的每個(gè)字符
for (int i = 0; i str.length(); i++) {
// 獲取字符序列中的第i個(gè)字符
char c1 = str.charAt(i);
// 循環(huán)遍歷字符序列中的每個(gè)字符
for (int j = 0; j str.length(); j++) {
// 獲取字符序列中的第j個(gè)字符
char c2 = str.charAt(j);
// 如果第i個(gè)字符不等于第j個(gè)字符,則輸出它們的排列
if (i != j) {
System.out.println(c1 + "" + c2);
}
}
}
}
}
123456789101112131415161718192021222324
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);????}
一、問(wèn)題分析:
輸入一行字母,那么會(huì)以換行結(jié)束。所以可以存入數(shù)組,也可以逐個(gè)輸入,遇到換行結(jié)束。
要統(tǒng)計(jì)各個(gè)類的個(gè)數(shù),就要逐個(gè)判斷是哪個(gè)分類的。
由于在ASCII碼中,數(shù)字,大寫(xiě)字母,小寫(xiě)字母分別連續(xù),所以可以根據(jù)邊界值判斷類型。
二、算法設(shè)計(jì):
1、讀入字符,直到遇到換行結(jié)束。
2、對(duì)于每個(gè)字符,判斷是字母還是數(shù)字,或者空格,或者是其它字符。
3、對(duì)于每個(gè)字符判斷后,對(duì)應(yīng)類別計(jì)數(shù)器自加。
4、最終輸出結(jié)果。