package com.yangzl.basic;

import java.util.Scanner;
/**
* 分别统计出其中汉字、英文字母、空格、数字和其它字符的个数
* @author Administrator
*
*/
public class Count_Input_Str_Num {
public static void main(String[] args) {
System.out.print("输入字符:");
Scanner s = new Scanner(System.in);
String str = s.nextLine();
count(str);
}
/**
* 统计汉字、字母、空格、数字的函数
* @param str
*/
public static void count(String str){
//统计个数
int ch_count = 0;
int en_count = 0;
int dig_count = 0;
int blank_count = 0;
int other_count = 0; for (int i = 0; i < str.length(); i++) {
char c = str.charAt(i);
if(Character.isLetter(c)&&c>255){//判断汉字
ch_count++;
}else if((c>='a'&c<='z')||(c>='A'&c<='Z')){//判断字母
en_count++;
}else if(c>='0'&c<='9'){//判断数字
dig_count++;
}else if(c==' '){//判断空格
blank_count++;
}else{
other_count++;
}
} System.out.println("汉字个数:"+ch_count);
System.out.println("字母个数:"+en_count);
System.out.println("数字个数:"+dig_count);
System.out.println("空格个数:"+blank_count);
System.out.println("其他字符个数:"+other_count);
}
}

结果:

输入字符:你好 i am YZL 345 %^&*()
汉字个数:2
字母个数:6
数字个数:3
空格个数:5
其他字符个数:6

 -----------------------------------------------------------------------------------------------------------------------------------------------------------------

2.弹出框的形式

package com.yangzl.basic;

import javax.swing.JOptionPane;
/**
* 弹出框形式 计算英文字母、数字、空格的个数
* @author Administrator
*
*/
public class Count {
public static void main(String []args){
int ch=0;
int nu=0;
int blank=0;
int ot=0;
String st = JOptionPane.showInputDialog("请输入字符串:");
for(int i=0;i<st.length();i++){
char n=st.charAt(i);
if(n>='0'&&n<='9')nu++;
else if((n>='a'&n<='z')||(n>='A'&n<='Z'))ch++;
else if(n==' ')blank++;
else ot++;
}
JOptionPane.showMessageDialog(null, "输入的字符串:"+st+"\n\n字母个数:"+ch+"\n数字个数:"+nu+"\n空格个数:"+blank+"\n其他字符:"+ot);
} }

Java基础编程题——分别统计出其中汉字、英文字母、空格、数字和其它字符的个数的更多相关文章

  1. java基础编程题练习(二)

    1.回文数 思路一:使用java特有解法,将原数字以字符串存储,翻转后赋值给新的字符串变量,再使用equals与原字符串进行对比 import java.util.Scanner; public cl ...

  2. java基础编程题练习(一)

    1.编程实现用户输入4个整数,按从大到小的顺序排列输出. 思路:将输入的数据存入数组,使用冒泡排序对数组数据进行排序后输出数组 冒泡排序的代码如下: import java.util.Scanner; ...

  3. java基础编程题(1)

    1. 题目:打印出杨辉三角形(要求打印出10行如下图) 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1...... package com.jzq.test1; ...

  4. java基础编程题

    1. 某公司每月标准上班时间是160小时,每小时工资是30元. 如果上班时间超出了160小时,超出部分每小时按1.5倍工资发放.请编写程序计算员工月工资. package com.num2.lianx ...

  5. Java基础编程题——打印九九乘法表

    package com.yangzl.basic; /** * 九九乘法表 * @author Administrator * */ public class Nine_Nine_Multiplica ...

  6. Java基础编程题——水仙花数

    package com.yangzl.basic; /** * 题目:打印出所有的"水仙花数". * 所谓"水仙花数"是指一个三位数, * 其各位数字立方和等于 ...

  7. Java基础编程题——素数

    package com.yangzl.basic; /** * 判断101-200之间有多少个素数,并输出所有素数. * @author Administrator * */ /*程序分析:判断素数的 ...

  8. java基础编程题(2)

    1.给定一个二叉树,找出其最大深度. 注:二叉树的深度为根节点到最远叶子节点的最长路径上的节点数. /** * Definition for a binary tree node. * public ...

  9. JAVA 基础编程练习题13 【程序 13 根据条件求数字】

    13 [程序 13 根据条件求数字] 题目:一个整数,它加上 100 后是一个完全平方数,再加上 168 又是一个完全平方数,请问该数是多少? 程序分析:在 10 万以内判断,先将该数加上 100 后 ...

随机推荐

  1. 在 Linux 虚拟机中手动安装或升级 VMware Tools

    对于 Linux 虚拟机,您可以使用命令行工具手动安装或升级 VMware Tools. 本次Linux 虚拟机为CentOS6.5 先决条件开启虚拟机.确认客户机操作系统正在运行.由于 VMware ...

  2. [转]能用HTML/CSS解决的问题就不要使用JS

    原文链接:http://www.codeceo.com/article/html-css-not-js.html 为什么说能使用html/css解决的问题就不要使用JS呢?两个字,因为简单.简单就意味 ...

  3. Maven Archetype简介以及搭建

    为什么会写这篇文章,因为公司先在构建项目骨架都是用的 maven archetype ,身为一个上进的渣渣猿,自己还是有必要了解下这个东西的. Archetype介绍 Archetype 是一个 Ma ...

  4. python之tkinter使用-文件系统遍历

    # tkinter:文件系统遍历 import tkinter as tk, os from time import sleep class DirList(object): def __init__ ...

  5. 平衡树及笛卡尔树讲解(旋转treap,非旋转treap,splay,替罪羊树及可持久化)

    在刷了许多道平衡树的题之后,对平衡树有了较为深入的理解,在这里和大家分享一下,希望对大家学习平衡树能有帮助. 平衡树有好多种,比如treap,splay,红黑树,STL中的set.在这里只介绍几种常用 ...

  6. MT【11】对数放缩题

    解答:C 评论:这里讲几个背景知识

  7. 自学Linux Shell18.3-sed实用工具

    点击返回 自学Linux命令行与Shell脚本之路 18.3-sed实用工具 1. 加倍行间距 命令格式: .......

  8. 【BZOJ2427】[HAOI2010]软件安装(动态规划,Tarjan)

    [BZOJ2427][HAOI2010]软件安装(动态规划,Tarjan) 题面 BZOJ 洛谷 题解 看到这类题目就应该要意识到依赖关系显然是可以成环的. 注意到这样一个性质,依赖关系最多只有一个, ...

  9. emWin 文字图形同时刷新导致图形显示异常

    @2018-7-10 实现目标 一 BUTTON 控制文字图形的刷新切换,具体为 BUTTON 初次按下,文字显示为 “开始” .填充圆显示为绿色,再次按下,文字显示为 “停止” .填充圆显示为红色 ...

  10. USACO 好题汇总

    背景 这里主要是用来针对USACO上的题目的二次汇总,因为我在刷题的过程中,有的题目我是可以很快想到解决方案的,对于这种题目,就没有必要深究了.但是有一些题目对于我来说还是有一些挑战的,可能用朴素的算 ...