map-请教一下以下转成小写的代码是起到什么作用?

问题描述

请教一下以下转成小写的代码是起到什么作用?

以下是代码全文:

package com.imooc;

import java.util.Iterator;
import java.util.Map;
import java.util.TreeMap;

public class MapTest {

public static void main(String[] args) {    String str = ""fdg+avAdc  bs5dDa9c-dfs"";    String s = getCharCount(str);    System.out.println(s);}public static String getCharCount(String str){    char[] chs = str.toCharArray();    Map<CharacterInteger> map = new TreeMap<CharacterInteger>();    for(int i = 0;i<chs.length;i++){        if(!(chs[i]>='a'&& chs[i]<='z'||chs[i]>='A'&&chs[i]<='Z'))            if(!(Character.toLowerCase(chs[i])>='a' && Character.toLowerCase(chs[i])<'z'))                continue;        Integer value = map.get(chs[i]);        int count = 0;        if(value!=null){            count = value+1;        }        count++;        map.put(chs[i] count);    }    return mapToString(map);}private static String mapToString(Map<CharacterInteger> map){    StringBuilder sb = new StringBuilder();    Iterator<Character> it = map.keySet().iterator();    while(it.hasNext()){        Character key = it.next();        Integer value = map.get(key);        sb.append(key+""(""+value+"")"");    }    return sb.toString();} 

}

解决方案

这段代码的作用就是统计一串字符串中各个字母(A-Z、a-z)的个数,而ASSII码中A-Z、a-z的值是**连续**的,所以if(!(chs[i]>='a'&& chs[i]<='z'||chs[i]>='A'&&chs[i]<='Z'))有这个判断就够了,下面转成小写字符我认为没啥作用,多此一举,或者写这段代码的人加上这个更加保险吧;
个人见解,仅供参考;如有作用,麻烦告知;

解决方案二:
你给出的红框部分就是判断某个字符是不是26个小写字母,如果不是小写字母(即条件!成立),就continue不予处理。

时间: 2024-10-26 06:08:13

map-请教一下以下转成小写的代码是起到什么作用?的相关文章

用shell脚本和c语言将大写字母转成小写的代码

最近在学shell编程,在网上看到tr '[:upper:]' '[:lower:]' 可以把字符串中大写字母转换成小写字母,我就在这个的基础上写了一个脚本来自己学习学习   复制代码 代码如下: #!/bin/bash #name: upper_to_lower.sh #the function is trun uper to lower #like ABCd to abcd haveuppernumber() {     #test if the string have upper numb

用shell脚本和c语言将大写字母转成小写的代码_linux shell

复制代码 代码如下: #!/bin/bash#name: upper_to_lower.sh#the function is trun uper to lower #like ABCd to abcd haveuppernumber(){    #test if the string have upper number    str="$(echo $1 | tr '[:upper:]' '[:lower:]')"    if [ "$str" != $1 ] ;

大写金额转换成小写

Q:如何将大写金额转换成小写? A:简单点,格式比较严格 private float getMoney(string strBig) ...{ string strExp=""; string[] arrBig = new string[] ...{ "整","","零","+0","壹","+1","贰","+2","

WPS怎么将正文中大写字母转换成小写

  WPS文字轻松将大写字母转换成小写 ①将文章全部转换成小写. 选中文字,单击激活标题后面的"开始"标签,单击字体工具区域中的更改大小写图标,弹出"更改大小写"对话框,选择"小写"完成第一步. ②英文每句话的第一个字母必须大写,所以我们在全选状态下执行"句首字母大写"操作. ③英文专有名词中实词的第一个字母必须大写,我们选中相应单词后执行"词首字母大写"操作. ④像TV.PE等缩略词及某些特殊的词字母需要

Excel大写字母如何快速转成小写字母

  1.打开Excel表格,接着点击"插入函数". 2.将函数的类别选为"全部",然后下来找到"LOWER"并点击. 3.选择大写字母所在单元格,选择完毕后点击确定即可. 4.这样大写字母就快速转换成小写字母啦.

c语言-C语言,把大写字母转换成小写字母的函数,请问哪里错了?

问题描述 C语言,把大写字母转换成小写字母的函数,请问哪里错了? main.c #include int main(void) { char ch; for (; (ch = getchar()) != EOF;) { tolower(ch); putchar(ch); } } tolower.c void tolower(char ch) { if (ch >= 'A'&&ch <= 'Z') ch += 32; } 解决方案 你这种该法只是改变了形参的值,没有改变实参的值,

HDOJ/HDU 1161 Eddy&amp;#39;s mistakes(大写字母转换成小写字母)

Problem Description Eddy usually writes articles ,but he likes mixing the English letter uses, for example "computer science" is written frequently "coMpUtEr scIeNce" by him, this mistakes lets Eddy's English teacher be extremely disco

ASP字符串大写转换成小写 ASP小写转换成大写 ucase lcase_ASP基础

LCase:转成小写 UCase:转成大写 下面是ASP中的代码,可以直接演示效果的. 复制代码 代码如下: <% dim str,str1,str2 str="AbCdEf" str1=LCase(str) str2=UCase(str) Response.write("LCase转换小写"&str1 & ",UCase转换大写" & str2) %> 而.NET中将字符串转换为大写ToUpper(),将字符

ASP字符串大写转换成小写 ASP小写转换成大写 ucase lcase

LCase:转成小写 UCase:转成大写 下面是ASP中的代码,可以直接演示效果的. 复制代码 代码如下: <% dim str,str1,str2 str="AbCdEf" str1=LCase(str) str2=UCase(str) Response.write("LCase转换小写"&str1 & ",UCase转换大写" & str2) %> 而.NET中将字符串转换为大写ToUpper(),将字符