查找字符串中第一个只出现一次的字符
Java Map接口提供了将Key映射到值的对象,HashMap TreeMap
方法 | 功能 |
put(K key ,V value) | 向集合中添加指定key ,value的映射关系 |
containsKey(Object key) | 查看是否包含指定key的映射关系,返回true |
containsValue(Object value) | 此映射将一个或多个key映射到指定的value值,返回true |
get( Object key) | 返回指定key的value值,否则返回null |
keySet() | 返回所有key对象形成的set集合 |
values() | 返回所有值对象形成的Collection集合 |
算法题 :在字符串中找出第一次只出现一次的字符。
1 package offer; 2 3 import java.util.HashMap; 4 5 public class find_char { 6 7 public static void main(String[] args) { 8 // TODO Auto-generated method stub 9 get("abcdefacbwqewwwwewqew"); 10 } 11 12 public static void get(String s){ 13 HashMap<String ,Integer> map=new HashMap<String,Integer>(); 14 char[] cs=s.toCharArray(); 15 for(int i=0;i<cs.length;i++){ 16 if(map.containsKey(cs[i]+"")){ //查看是否包含指定键值的映射关系 17 map.put(cs[i]+"",(map.get(cs[i]+"")+1 ));//get函数 返回指定key键对应的值,否则返回null 18 } 19 else{ 20 map.put(cs[i]+"",1); 21 22 } 23 } 24 for(int j=0;j<cs.length;j++){ 25 if(map.get(cs[j]+"")==1){ //get()返回指定键值key对应的value; 26 System.out.println(cs[j]); 27 break; 28 29 } 30 } 31 } 32 }