Java刷算法题常用API总结

前言

由于最近在学Java,所以由c++转到Java刷算法题,虽然整体上变化不大,但是一些常用的API还是要重新开始的,没了好用的STL,我只能拥抱Java的集合了。话不多说开始整理,随用随补充。

正文

Map

注意,map中只能存储引用类型,不能存储基本数据类型

常用方法

对于哈希表,我们常用的实现类是HashMap,下面是我们会经常用到的几个方法。

//创建
Map<String,Integer> map = new HashMap<>();
//加入元素
map.push(key,value);
//拿到元素
map.get(key);
//拿到键为key的值,如果不存在返回默认值0
map.getOrDefault(key,0);
//取大小
map.size();
//清空
map.clear();
//判空
map.isEmpty();
//移除某个键值对
map.remove();

哈希表的遍历操作

//第一种、forEach循环
for(Map.Entry<String,Integer> e : map.entrySet()){
	entry.getKey();
	entry.getValue();
}

//第二种、遍历键和值
for(String key : map.keySet())
for(Integer value : map.values())

String

常用方法

和c++不同的一点是,不能用s[i],只能用s.charAt(i)


//取出str中下标从[i,j)的String,注意左闭右开
str.substring(i,j);
//将String转成字符数组
str.toArray();
//排序操作
char[] c=str.toArray();
Arrays.sort(c);//Arrays是一个工具类
String newStr=new String(c);

遍历String

public static void main(String[] args) {
        String str = "keep walking!!!";
        //方法一
        char[] charArray = str.toCharArray();
        for (char i:charArray){
            System.out.println(i);
        }

        // 方法二
        for (int i = 0; i < str.length(); i++) {
            System.out.println(str.charAt(i));
        }
 
        //方法三
        for (int i = 0; i < str.length(); i++) {
            System.out.println(str.substring(i, i + 1));
        }
    }
	

注意对于第二种方法,没办法foreach,所以第一种才转成了字符数组

Arrays类

这是一个链接,后续再自己整理

结语

本篇文章随用随整理,目前还不全面,后续会不断补充。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值