😚一个不甘平凡的普通人,致力于为Golang社区和算法学习做出贡献,期待您的关注和认可,陪您一起学习打卡!!!😘😘😘
🤗专栏:算法学习
🤗专栏:Go实战
💬个人主页:个人主页
文章目录
- 问题描述
- 字符串操作中常用方法
- Character类
- HashMap || HashSet
- 验证数字是否超过int类型范围
问题描述
最近在练习字符串类型的算法题时候,编程语言内部自带了很多api还有一些实用的方法,在此总结一下用法,方便后面回顾使用。
字符串操作中常用方法
Character类
1.返回的是一个boolean类型的,可以用于去除字符串中非数字和字母的字符
Character.isLetterOrDigit()
2.判断是否是字符
Character.isDigit()
3.判断是否是小写字符
Character.isLowerCase()
4.转换成小写或者大写
Character.toLowerCase()
Character toUpperCase()
HashMap || HashSet
一般题中要求去重的时候,可以使用HashSet,set表中不支持有重复元素
HashSet<Integer> set = new HashSet<>();set.add(1);//添加元素System.out.println(set.size()); //长度set.remove(1); //删除元素System.out.println(set.isEmpty()); // 判断是否是空set.clear(); //清除所有元素//判断是否包含某个元素 ,布尔类型System.out.println(set.contains(1));
一般题中要统计字符出现的次数,可以使用HashMap来统计,支持重复
HashMap<Character,Integer> map = new HashMap<>();map.put('1',1); //压入元素map.get('1');// 提取键值//获取键值,默认为0map.getOrDefault('1',0);System.out.println(map.isEmpty()); //判断是否为空System.out.println(map.containsKey('1')); //判断是否含有键map.remove('1'); //删除map.values(); //显示所有的值map.size();//获得每一个键和值for(Map.Entry<Character,Integer> entry: map.entrySet()){int key = entry.getKey(),value = entry.getValue();}
验证数字是否超过int类型范围
这类题经常遇到,所以总结一下。以这个例子
public static void main(String[] args) {String a = "12312";int result = 0;for(int i =0;i<a.length();i++){//拿到数字int temp = result*10+(a.charAt(i)-'0');if(temp/10 != result){System.out.println(1);}result = temp;}}