栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java数组编程实例(一) 统计输入字符串中每个字母出现的次数

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java数组编程实例(一) 统计输入字符串中每个字母出现的次数

数组(array)是一种用来组织数据的简单但功能强大的程序设计语言结构。数组是值的列表,它让我们仅声明一个变量,变量中可容纳多个单独访问的值,每个值保存在数组中确定的、已编号的位置中,对应于每个位置的编号称为索引(index)或下标(subscript)。在Java中,数组索引从0开始,大小为N的数组其下标从0到N-1。

在Java中数组是对象,要创建一个数组必须声明一个指向数组的引用,并通过new运算符实例化数组。这个过程要分配用来保存值的内存空间即数组的长度。数组有两种声明方式,第一种是在数组中保存的值的类型后面加上方括号,第二种是在数组名后加方括号。两种声明是等价的,但第一种格式更能表达所声明的类型是数组而不是整型,这样也与其它的类型声明格式相一致。

int[] score1 = new int[23]; //数组声明并实例化
int score2[]; //第二种声明方法
int[] score3 = {87, 93, 95, 88, 98, 84, 91} //用初值表实例化一个数组,代替使用new运算符

数组可以保存任何的基本类型或任何的对象(类)类型,但保存在数组中的所有值必须有相同的类型(或至少是相容的)。

编程实例。从键盘输入一个字符串,统计输入字符串中每个不同的字母(分大小写)出现的次数。

import java.util.Scanner;

public class LetterCount
{
	final int NUMCHAR = 26; //数组长度
	Scanner scan = new Scanner(System.in); // 实例化一个键盘扫描输入对象
	int[] upper = new int[NUMCHAR];
	int[] lower = new int[NUMCHAR]; //大小写字母统计数组,每个元素保存一个整数,默认为0
	char current; //当前位置的字符,char类型可通过ASCII码对字符排序
	int other = 0; //没有字母的情况
	System.out.println("Enter a sentence:");
	String line = scan.nextLine(); //输入字符串,可以带空格,按回车返回

	for (int ch = 0; ch= 'A' && current <= 'Z')
			upper(current-'A')++;
		else 
			if (current >= 'a' && current <= 'z')
				lower(current-'a')++;
			else
				other++;
	}

	System.out.println(); //换行
	for (int letter = 0; letter < NUMCHAR; letter++) 
	{
		System.out.print((char)(letter + 'A'));
		System.out.print(":" + upper[letter]); //注意下标用方括号
		System.out.print("tt" + (char)(letter + 'a'));
		System.out.print(":" + lower[letter]);
	}

	System.out.println();
	System.out.println("Non-alphabetic characters:" + other);
	}
}

next方法返回空格前的有效字符,它会自动去掉第一个有效字符前的空格等结束符,在输入有效字符后才会将后面的空格回车等认定为结束符。所以next方法不能得到带空格的字符串,而nextLine()方法返回回车键之前的所有字符.

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/786491.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号