import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
public class lzwCode {
public static void main(String [] args) {
String str = "ab accd12edehdb acac";
str = str.replaceAll("[^a-zA-Z]", "");
int countNum = 0;
Map<Character, Integer> map = new HashMap<Character, Integer>();
for (int i=0; i<str.length(); i++) {
Character ch = new Character(str.charAt(i));
if (map.containsKey(ch)) {
map.put(ch, map.get(ch).intValue()+1);
} else {
map.put(ch, new Integer(1));
}
}
Iterator iter = map.entrySet().iterator();
while(iter.hasNext()) {
countNum++;
Map.Entry entry = (Map.Entry) iter.next();
Object key = entry.getKey();
Object val = entry.getValue();
System.out.println("字母"+key+"有"+val+"个");
}
System.out.println("一共有"+countNum+"字母");
}
}
PHP
$str = "abaccdedehdbacac";
$arr = array();
for ($i=0; $i<strlen($str); $i++) {
$key = $str[$i];
if (array_key_exists($key, $arr)) {
$arr[$key] = $arr[$key] + 1;
} else {
$arr[$key] = 1;
}
}
foreach($arr as $key=>$val) {
echo "字母".$key."有".$val."个"."<br>";
}
echo "一共有".count($arr)."字母";
控制台结果: