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. python下对appium服务端的操作

    appium -p 4703 -bp 5500 -U 127.0.0.1:5005 -p 指的是·appium的服务器端口 -bp 指的是 连接安卓设备端口 -U 指的是 安卓设备 大体思路: 1. ...

  2. BZOJ3676 APIO2014回文串(manacher+后缀自动机)

    由于本质不同的回文子串数量是O(n)的,考虑在对于每个回文子串在第一次找到它时对其暴力统计.可以发现manacher时若右端点移动则找到了一个新回文串.注意这样会漏掉串长为1的情况,特判一下. 现在问 ...

  3. MT【49】四次函数求最值

    已知$f(x)=(1-x^2)(x^2+ax+b)$的图像关于x=3对称,求$f(x)$的最大值. 解答:显然$-1,7;1,5$是$f(x)=0$的根.故$(x^2+ax+b)=(x-5)(x-7) ...

  4. debian 系统安装配置apache

    安装sshapt-get install ssh-server  (安装失败请插入镜像)service ssh start Apache 服务安装apt-get install apache2 apa ...

  5. 04 Zabbix核心概念回顾

    04 Zabbix核心概念回顾 1. 监控四大核心功能: 数据采集----数据储存----数据展示和数据分析-----告警    1.1. 数据采集方式: SNMP:被监控设备上面必须启用SNMP a ...

  6. 自学Linux Shell1.3-Linux文件系统

    点击返回 自学Linux命令行与Shell脚本之路 1.3-Linux文件系统 文件系统是文件存放在磁盘等存储设备上的组织方法.Linux系统能支持多种目前流行的文件系统,如EXT2. EXT3. F ...

  7. 自学Linux Shell13.2-选项处理(主要getopt、getopts命令)

    点击返回 自学Linux命令行与Shell脚本之路 Bash shell提供了一些不同的方法来从用户处获得数据,包括以下3中方法: 命令行参数(添加在名利后面的数据) 命令行选项(可修改命令行为的单个 ...

  8. nowcoder172C 保护 (倍增lca+dfs序+主席树)

    https://www.nowcoder.com/acm/contest/172/C (sbw大佬太强啦 orz) 先把每一个路径(x,y)分成(x,lca),(y,lca)两个路径,然后就能发现,对 ...

  9. android sqlite批量插入数据速度解决方案

    转自 http://hi.baidu.com/hfutonline/blog/item/62b1e4de8bdf4b2e5882dd28.html 最近在做android项目的时候遇到一个问题,应用程 ...

  10. 分享一个自己做的SpringMVC的PPT

    分享一个自己做的SpringMVC的PPT,由于比较忙只写了一些重要的部分