自学内容网 自学内容网

【Java基础】常用类方法记录

HashMap类

HashMap 是一个散列表,它存储的内容是键值对(key-value)映射

import java.util.HashMap; // 引入 HashMap 类
// 创建HashMap对象
HashMap<Integer, String> map1 = new HashMap<Integer, String>();// 键、值类型可不同
HashMap<Integer, Integer> map2 = new HashMap<Integer, Integer>();// 键、值类型可相同

1.添加元素:put()

HashMap<Integer, String> map1 = new HashMap<Integer, String>();
map1.put(1,"a");// {1=a}
map1.put(2,"b");// {1=a,2=b}

2.访问元素:get()

// map1 : {1=a,2=b}
map1.get(1);// a
map1.get(2);// b    

3.删除元素:remove()

// map1 : {1=a,2=b}
map1.remove(2);// {1=a}
map1.remove(1);// {}

4.清空所有键/值对:clear()

// map1 : {1=a,2=b}
map1.clear();// {}

5.计算键/值对的数量:size()

// map1 : {1=a,2=b}
map1.size();// 2

6.迭代集合中的元素

// 迭代key
for(Integer key : map1.keySet()){
    .......
}
// 迭代value值
for(String value : map1.values()){
    .......
}

7.复制一份 hashMap:clone()

// map1 : {1=a,2=b}
HashMap<Integer, String> map2 = (HashMap<Integer, String>)map1.clone();
// map2 : {1=a,2=b}

clone() 方法属于浅拷贝,只复制指向某个对象的指针,而不复制对象本身,新旧对象还是共享同一块内存, 所以如果其中一个对象改变了这个地址,就会影响到另一个对象。

8.判断hashMap是否为空:isEmpty()

map.isEmpty();// true OR false

9.批量添加元素:putAll()

// map1 : {1=a,2=b}  
map2.putAll(map1);// map2 : {1=a,2=b}

10.插入不存在元素:putIfAbsent()

putIfAbsent() 方法会先判断指定的键(key)是否存在,不存在则将键/值对插入到 HashMap 中。

// map1 : {1=a,2=b}
map1.putIfAbsent(1,"c");// map1 : {1=a,2=b}
map1.putIfAbsent(3,"a");// map1 : {1=a,2=b,3=a}

11.检查是否存在指定的 key 对应的映射关系:containsKey()

// map1 : {1=a,2=b}
map1.containsKey(1);// true
map1.containsKey(3)// false

12.检查是否存在指定的 value 对应的映射关系:containsValue()

// map1 : {1=a,2=b}
map1.containsValue("a");// true
map1.containsValue("c")// false

13.替换指定的 key 对应的 value:replace()

// map1 : {1=a,2=b}
map1.replace(1,"c");// true  | map1 : {1=c,2=b}
map1.replace(1,"a","d");// false | map1 : {1=c,2=b}
map1.replace(1,"c","d");// true  | map1 : {1=d,2=b}

14.获取返回指定 key 对应对 value,如无则返回默认值:getOrDefault()

// map1 : {1=a,2=b}
map1.getOrDefault(1,"-1");   // a
map1.getOrDefault(3,"-1");   // -1

15.返回映射中包含的映射的 Set 视图:entrySet()

// map1 : {1=a,2=b}
map1.entrySet();// [1=a,2=b]

16.返回映射中所有 key 组成的 Set 视图:setKey()

// map1 : {1=a,2=b}
map1.setKey();// [1,2]

17.返回 hashMap 中存在的所有 value 值:values()

// map1 : {1=a,2=b}
map1.values();// [a,b]

HashSet类

HashSet 基于 HashMap 来实现的,是一个不允许有重复元素的集合

import java.util.HashSet; // 引入 HashSet 类
// 创建HashSet对象
HashSet<Object> objectSet = new HashSet<Object>();
HashSet<String> stringSet = new HashSet<String>();
HashSet<Integer> integerSet = new HashSet<Integer>();

1.添加元素:add()

set.add("a");// [a]
set.add("b");// [a,b]
set.add("a");// [a,b]

2.删除元素:remove()

// set:[a,b]
set.remove("b");// [a]
set.remove("a");// []

3.判断元素是否存在:contains()

// set:[a,b]
set.contains("a");// true
set.contains("c");// false

4.清空集合:clear()

// set:[a,b]
set.clear();// []

5.计算集合数量:size()

// set:[a,b]
set.size();// 2

6.迭代集合中的元素

for(String str : set){
    ......
}

Math类

Java 的 Math 包含了用于执行基本数学运算的属性和方法

Math 的方法都被定义为 static 形式,通过 Math 类可以在主函数中直接调用

1.返回参数的绝对值:abs()

Math.abs(-1);// 1
Math.abs(1);// 1
Math.abs(-1.1)// 1.1

2.向上取整:ceil()

Math.ceil(100.12345);// 101.0
Math.ceil(100.72345);// 101.0
Math.ceil(-90.1);// -90.0
Math.ceil(-70);// -70.0

3.向下取整:floor()

Math.ceil(100.12345);// 100.0
Math.ceil(100.72345);// 100.0
Math.ceil(-90.1);// -91.0
Math.ceil(-70);// -70.0

4.返回最接近参数的整数值:rint()

Math.rint(100.12345);// 100.0
Math.rint(100.72345);// 101.0
Math.rint(-90.1);// -90.0
Math.rint(-70);// -70.0

// 需要注意的是,与四舍五入不同,当小数位为5时,它会选择优先选择为偶数的结果
Math.rint(100.5);// 100.0
Math.rint(101.5);// 102.0
Math.rint(-90.5);// -90.0
Math.rint(-91.5);// -92.0

5.四舍五入:round()

Math.round(100.12345);// 100
Math.round(100.72345);// 101
Math.round(-90.1);// -90
Math.round(-90.7);// -91

Math.round(100.5);// 101
Math.round(101.5);// 102
Math.round(-90.5);// -90
Math.round(-91.5);// -91

6.返回两数中的最小值:min()

Math.min(1,2);// 1
Math.min(-1,-2);// -2
Math.min(1.1,2.2);// 1.1
Math.min(0,-2);// -2

7.返回两数中的最小值:max()

Math.max(1,2);// 2
Math.max(-1,-2);// -1
Math.max(1.1,2.2);// 2.2
Math.max(0,-2);// 0

8.返回自然数底数e的参数次方:exp()

Math.exp(11);// e^11 : 59874.14171519782

9.返回参数的自然数底数e的对数值:log()

Math.log(11);// 2.3978952727983707
Math.log(Math.E);// 1.0

10.返回第一个参数的第二个参数次方:pow()

Math.pow(Math.E,11);// e^11 : 59874.14171519778
Math.pow(2,2);// 2^2 : 4.0
Math.pow(-1,2);// -5^2 : 1.0

11.求参数的算术平方根:sqrt()

Math.sqrt(4);// 2.0
Math.sqrt(0);// 0.0
Math.sqrt(-1);// NaN

12.返回一个随机数:random()

// 随机数范围为 0.0 =< Math.random < 1.0
Math.random()// 0.14075030148839085

原文地址:https://blog.csdn.net/qq_40878316/article/details/143062650

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!