黑马程序员技术交流社区

标题: 还是输出字符串中字符出现次数,挂了,求指导 [打印本页]

作者: 张振纲    时间: 2012-8-29 14:42
标题: 还是输出字符串中字符出现次数,挂了,求指导
  1. package Exercise;

  2. import java.util.Map;
  3. import java.util.TreeMap;

  4. public class charTime_map {
  5.         public static void main(String[] args){
  6.                 String str ="sfaljkdfa";
  7.                
  8.                 char[] arry=str.toCharArray();
  9.                
  10.                 Map<Character, Integer> map= new TreeMap<Character, Integer>();
  11.                
  12.                 for (int i = 0; i < arry.length; i++) {
  13.                         Integer value = map.get(arry[i]);
  14.                         if(value!=null)
  15.                                 map.put(arry[i], 1);
  16.                         else{
  17.                                 value= value+1;
  18.                                 map.put(arry[i], value);
  19.                         }
  20.                 }
  21.                 System.out.println(map.toString());
  22.         }
  23. }
复制代码

作者: 唐志兵    时间: 2012-8-29 14:45
看看了。
作者: 赵云柯    时间: 2012-8-29 14:50
本帖最后由 赵云柯 于 2012-8-29 14:58 编辑
  1. import java.util.Map;
  2. import java.util.TreeMap;

  3. public class charTime_map {
  4.         public static void main(String[] args){
  5.                 String str ="sfaljkdfa";
  6.                
  7.                 char[] arry=str.toCharArray();
  8.                
  9.                 Map<Character, Integer> map= new TreeMap<Character, Integer>();
  10.                
  11.                 for (int i = 0; i < arry.length; i++) {
  12.                         Integer value = map.get(arry[i]);
  13.                         if(value==null)//出现次数等于null时赋值为1,否则次数加1
  14.                                 map.put(arry[i], 1);
  15.                         else{
  16.                                 value= value+1;
  17.                                 map.put(arry[i], value);
  18.                         }
  19.                 }
  20.                 System.out.println(map.toString());
  21.         }
  22. }
复制代码
if(value==null)//出现次数等于null时赋值为1,否则次数加1

作者: 张振纲    时间: 2012-8-29 15:09
赵云柯 发表于 2012-8-29 14:50
if(value==null)//出现次数等于null时赋值为1,否则次数加1

谢谢,问题已解决

作者: 王自强    时间: 2012-8-29 15:20


  1. import java.util.Map;
  2. import java.util.TreeMap;

  3. class charTime_map {
  4. public static void main(String[] args){
  5. String str ="sfaljkdfa";

  6. char[] arry=str.toCharArray();

  7. Map<Character, Integer> map= new TreeMap<Character, Integer>();

  8. for (int i = 0; i < arry.length; i++) {
  9. Integer value = map.get(arry[i]);
  10. if(value==null)//当map集合中没有该键的隐射关系时,才进行初始化。
  11. map.put(arry[i], 1);
  12. else{
  13. value= value+1;
  14. map.put(arry[i], value);
  15. }
  16. }
  17. System.out.println(map.toString());
  18. }
  19. }
复制代码
if(value==null)//当map集合中没有该键的隐射关系时,才进行初始化。
map.put(arry, 1);


作者: 黑马张涛    时间: 2012-8-29 15:35

  1. <p> </p>
复制代码
package algorithmTest;
import java.util.Map;
import java.util.TreeMap;
public class CharTime {  

         public static void main(String[] args){
  
                 String str ="sfaljkdfa";
  
                 
                 char[] arry=str.toCharArray();
  
                 
                 Map<Character, Integer> map= new TreeMap<Character, Integer>();
  
                 
                 for (int i = 0; i < arry.length; i++) {
  
                         Integer value = map.get(arry);
                         if(value==null) //这里,你理解错了,应该是集合中没有这个值时,让他的数量为1
  
                                 map.put(arry, 1);
  
                         else{
  
                                 value= value+1;
  
                                 map.put(arry, value);
  
                         }
  
                 }
  
                 System.out.println(map.toString());
  
         }
  
}





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2