欢迎光临散文网 会员登陆 & 注册

Java作业(热身和扩展题):统计单个或每个字符出现次数,Object面试题等详细图析

2020-03-17 16:37 作者:诗书画唱  | 我要投稿

热身题由简单题到扩展题,循序渐进更加便于理解):

统计"一闪一闪亮晶晶,漫天都是小星星"中,字符”晶“出现的次数:

package a;

public class demo{

public static void main(String[] args) {


String str="一闪一闪亮晶晶,漫天都是小星星";

int count=0;//统计次数的变量

int start=0; //每次改变的位置

while((start=str.indexOf("晶",start))!=-1){

start++;//位置要改变

count++;//次数++

}

System. out . println("晶出现了"+count+"次");

}}




扩展题:

统计"一闪一闪亮晶晶,漫天都是小星星"中每个字符出现次数:

package a;


import java.util.HashMap;

import java.util.Set;


public class demo {

public static void main(String[] args) {

String str = "一闪一闪亮晶晶,漫天都是小星星";

HashMap<Object, Integer> h = new HashMap<Object, Integer>();

// 使用循环将每个字符保存起来

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

// 判断map集合的键是否存在

if (h.containsKey(str.charAt(i))) {// 重复的时候,如果键是存在的就让其值(出现的次数)+1

int cishu =h.get(str.charAt(i));// 得到了重复的时候的值

cishu++;h.put(str . charAt(i),cishu);

} else {

h.put(str.charAt(i),1);

// 如果键不存在,其值(出现的次数)就是1

}}

Set<Object> s=h.keySet();

for(Object i:s){

System.out. println("文字"+i+"出现了"+h.get(i));

}

}}


Java作业(热身和扩展题):统计单个或每个字符出现次数,Object面试题等详细图析的评论 (共 条)

分享到微博请遵守国家法律