笔记:java刷算法题时可以用到的一些高效函数
2021/10/2 11:13:49
本文主要是介绍笔记:java刷算法题时可以用到的一些高效函数,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
一些高效函数笔记
- int[] ans = new int[n * 2];
- int[] ans = Arrays.copyOf(nums, n*2);
- System.arrayCopy
- str.charAt(index)
- 关于StringBuilder
- Math里常用
- 位运算
int[] ans = new int[n * 2];
开新的数组
int[] ans = Arrays.copyOf(nums, n*2);
Arrays的copyOf()方法传回的数组是新的数组对象,改变传回数组中的元素值,不会影响原来的数组。
copyOf()的第二个自变量指定要建立的新数组长度,如果新数组的长度超过原数组的长度,则保留数组默认值
int[] arr1 = {1, 2, 3, 4, 5}; int[] arr2 = Arrays.copyOf(arr1, 5);//1,2,3,4,5 int[] arr3 = Arrays.copyOf(arr1, 10);//1,2,3,4,5,0,0,0,0,0
System.arrayCopy
arraycopy(Object src, int srcPos, Object dest, int destPos, int length)
代码解释:
Object src : 原数组
int srcPos : 从元数据的起始位置开始
Object dest : 目标数组
int destPos : 目标数组的开始起始位置
int length : 要copy的数组的长度
//nums=1,2,3 ans=5,4,3,2,1 System.arraycopy(nums, 0, ans, 1, 3);//ans=5,1,2,3,1
str.charAt(index)
返回指定位置的字符,如str=“hello”,str.charAt(1)则为‘e’
关于StringBuilder
StringBuilder strB = new StringBuilder();
strB.append(“123”)/append(‘c’)//字符串连接
strB.deleteCharAt(1)//删除下标为1字符
strB.delete(3,5);删除下标从3到5的字符
Math里常用
Math.abs(x) 函数返回指定数字 “x“ 的绝对值
Math.max(a,b,c)函数返回一组数中的最大值。
位运算
左移( << )、右移(>>)、无符号右移( >>> )、位与( & )、位或( | )、位异或( ^ )、位非( ~ )
(5 & 3);//结果为1 (5 | 3);//结果为7 (5 ^ 3);//结果为6 (~5);//结果为-6
这篇关于笔记:java刷算法题时可以用到的一些高效函数的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-09-28微服务架构中API版本控制的实践
- 2024-09-28AI给的和自己写的Python代码,都无法改变输入框的内容,替换也不行
- 2024-09-27Sentinel配置限流资料:新手入门教程
- 2024-09-27Sentinel配置限流资料详解
- 2024-09-27Sentinel限流资料:新手入门教程
- 2024-09-26Sentinel限流资料入门详解
- 2024-09-26Springboot框架资料:初学者入门教程
- 2024-09-26Springboot框架资料详解:新手入门教程
- 2024-09-26Springboot企业级开发资料:新手入门指南
- 2024-09-26SpringBoot企业级开发资料新手指南