第1个回答 2012-11-20
第一题:
public static void main(String[] args) {
// TODO Auto-generated method stub
Map<Character, Integer> key =new HashMap<Character, Integer>();
System.out.println("请输入...");
Scanner in = new Scanner(System.in);
char[] chs=in.nextLine().toCharArray();
for (int j = 0; j < chs.length; j++) {
if(key.containsKey(chs[j])){
int sum=key.get(chs[j]);
key.remove(chs[j]);
key.put(chs[j], ++sum);
}else{
key.put(chs[j], 1);
}
}
//查看结果
Iterator iter = key.entrySet().iterator();
while (iter.hasNext()) {
Map.Entry entry = (Map.Entry) iter.next();
Object k = entry.getKey();
Object v = entry.getValue();
System.out.println(k+"出现:"+v+"次");
}
}
第二题
SimpleDateFormat sdf = new SimpleDateFormat("yyyy.MM.dd");
SimpleDateFormat s = new SimpleDateFormat("MMMM dd.yyyy",Locale.ENGLISH);
System.out.println("请输入...");
Scanner in = new Scanner(System.in);
String str =in.nextLine();
Pattern pattern = Pattern.compile("^(?:(?!0000)[0-9]{4}.(?:(?:0[1-9]|1[0-2]).(?:0[1-9]|1[0-9]|2[0-8])|(?:0[13-9]|1[0-2]).(?:29|30)|(?:0[13578]|1[02])-31)|(?:[0-9]{2}(?:0[48]|[2468][048]|[13579][26])|(?:0[48]|[2468][048]|[13579][26])00)-02-29)$");
Matcher mat = pattern.matcher(str);
if(mat.matches()){
Date d=sdf.parse(str);
System.out.println(s.format(d));
}else{
Date d=s.parse(str);
System.out.println(sdf.format(d));
}
}
第2个回答 2012-11-20
第一题的答案
import javax.swing.JOptionPane;
import java.util.Map;
import java.util.TreeMap;
public class Task1{
public static void main(String[] args) {
String inputStr = null;
while(inputStr==null || "".equals(inputStr)) {
inputStr = JOptionPane.showInputDialog(null,"请输入一个字符串!").toString();
}
System.out.println("输入的字符串为:"+inputStr);
Map map = new TreeMap();//计数
for(int i = 0 , j = inputStr.length() ; i < j ; i++){
char k = inputStr.charAt(i);
if((k >='a' && k <= 'z') || (k >='A' && k <= 'Z')){
if(map.containsKey(k)) {
map.put(k,Integer.parseInt(map.get(k).toString())+1);
} else {
map.put(k,1);
}
}
}
System.out.println("\n字符出现的次数如下:");
//打印结果
for(Object k : map.keySet()){
System.out.println(k+" = " + map.get(k) + "次");
}
}
}本回答被提问者和网友采纳
第3个回答 2012-11-19
第一题:
import java.util.*;
import java.util.Scanner;
public class StateString {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("输入一个字符串:");
String s=sc.nextLine();
char[] array=s.toCharArray();
Map<Character,Integer> map=new HashMap<Character,Integer>();
for(char c:array){
if(map.containsKey(c)){
map.put(c, map.get(c)+1);
}else{
map.put(c, 1);
}
}
Set<Character> set=map.keySet();
for(char c:set){
System.out.println("字符"+c+"的个数为:"+map.get(c)+"个");
}
}
}