Java函数编程的基础——十个常用函数的解析
Java函数编程是Java语言中重要的编程思想之一。函数是一段可重复使用的代码块,可以接受参数、处理数据并返回值。函数基础是Java编程的基础。下文将对十个常用函数进行解析。
一. Math类
1. Math类的pow函数(double a, double b):
该函数返回a的b次幂,其中a和b都是double类型的。示例代码如下:
double x = Math.pow(2, 3);//8
double y = Math.pow(10, -2);//0.01
关键字:double、次幂、返回值
2. Math类的sqrt函数(double a):
该函数返回一个数的平方根的值,其中a是double类型的。示例代码如下:
double x = Math.sqrt(9);//3
double y = Math.sqrt(16);//4
关键字:double、平方根、返回值
二. String类
1. String类的compareTo函数(String anotherString):
该函数比较当前字符串与另一个字符串的字典序,如果当前字符串在字典序中比另一个字符串靠前,返回一个负数;如果当前字符串在字典序中比另一个字符串靠后,返回一个正数;如果两个字符串相等,返回0。示例代码如下:
String str1 = "abc";
String str2 = "def";
int x = str1.compareTo(str2);//-3
int y = str2.compareTo(str1);//3
int z = str1.compareTo("abc");//0
关键字:当前字符串、另一个字符串、字典序
2. String类的indexOf函数(int ch):
该函数返回当前字符串中指定字符 次出现的位置,其中ch是要查找的字符的Unicode值。示例代码如下:
String str = "abcdefg";
int x = str.indexOf('c');//2
int y = str.indexOf('h');//-1
关键字:指定字符、Unicode值、位置
三. Random类
1. Random类的nextInt函数(int bound):
该函数返回一个伪随机整数,其范围是从0(包括0)到指定值(不包括指定值)。在Java中,Random类是一个伪随机数生成器,因为它是从初始值生成一系列数字。示例代码如下:
Random random = new Random();
int x = random.nextInt(10);//随机整数在0-9之间
int y = random.nextInt(100);//随机整数在0-99之间
关键字:伪随机、整数、范围
2. Random类的nextDouble函数():
该函数返回一个伪随机double值,其范围是从0.0(包括0.0)到1.0(不包括1.0)。示例代码如下:
Random random = new Random();
double x = random.nextDouble();//随机double值在0.0-1.0之间
double y = random.nextDouble() * 10;//随机double值在0.0-10.0之间
关键字:伪随机、double、范围
四. Date类
1. Date类的getTime函数():
该函数返回从1970年1月1日00:00:00到当前Date对象表示的时间的毫秒数。示例代码如下:
Date date = new Date();
long time = date.getTime();//从1970年1月1日00:00:00到现在的毫秒数
关键字:1970年1月1日00:00:00、毫秒数、返回值
2. Date类的toString函数():
该函数返回以字符串形式表示的日期和时间,例如“Sat Oct 02 14:07:33 CST 2021”。示例代码如下:
Date date = new Date();
String str = date.toString();//以字符串形式表示的日期和时间
关键字:字符串、日期、时间
五. Arrays类
1. Arrays类的sort函数(T[] a):
该函数用于对数组进行排序,其中T是实际数组的元素类型。示例代码如下:
int[] arr = {3, 1, 4, 2};
Arrays.sort(arr);//排序后的数组是{1, 2, 3, 4}
关键字:排序、数组、元素类型
2. Arrays类的fill函数(T[] a,T val):
该函数用于将数组的所有元素都填充为指定的值。其中T是实际数组的元素类型,val是要填充的值。示例代码如下:
int[] arr = new int[10];
Arrays.fill(arr, 0);//数组的所有元素都被填充为0
关键字:填充、数组、元素类型
六. System类
1. System类的currentTimeMillis函数():
该函数返回当前时间距离UTC1970年1月1日00:00:00的毫秒数。示例代码如下:
long time = System.currentTimeMillis();//当前时间距离UTC1970年1月1日00:00:00的毫秒数
关键字:UTC1970年1月1日00:00:00、毫秒数、返回值
2. System类的arraycopy函数(Object src, int srcPos, Object dest, int destPos, int length):
该函数将src数组中的一系列元素复制到dest数组中,其中src和dest都是要复制的数组,srcPos和destPos是源数组和目标数组开始复制的位置,length是要复制的元素数。示例代码如下:
int[] src = {1, 2, 3, 4, 5};
int[] dest = new int[10];
System.arraycopy(src, 2, dest, 4, 3);//目标数组为{0, 0, 0, 0, 3, 4, 5, 0, 0, 0}
关键字:复制、数组、开始位置、元素数
七. ArrayList类
1. ArrayList类的size函数():
该函数返回当前ArrayList对象中的元素数。示例代码如下:
ArrayList<Integer> arrList = new ArrayList<>();
arrList.add(1);
arrList.add(2);
int size = arrList.size();//元素数为2
关键字:元素数、返回值
2. ArrayList类的add函数(E element):
该函数将指定元素添加到ArrayList对象的末尾,其中E是元素的类型,element是要添加的元素。示例代码如下:
ArrayList<Integer> arrList = new ArrayList<>();
arrList.add(1);
arrList.add(2);
关键字:添加、元素、类型
八. Collections类
1. Collections类的sort函数(List<T> list):
该函数用于对List对象进行排序,其中T是List元素的类型。示例代码如下:
ArrayList<Integer> arrList = new ArrayList<>();
arrList.add(3);
arrList.add(1);
arrList.add(4);
arrList.add(2);
Collections.sort(arrList);//排序后的数组为{1, 2, 3, 4}
关键字:排序、List、元素类型
2. Collections类的reverse函数(List<T> list):
该函数用于对List对象进行反转,其中T是List元素的类型。示例代码如下:
ArrayList<Integer> arrList = new ArrayList<>();
arrList.add(1);
arrList.add(2);
arrList.add(3);
Collections.reverse(arrList);//反转后的数组为{3, 2, 1}
关键字:反转、List、元素类型
九. SimpleDateFormat类
1. SimpleDateFormat类的format函数(Date date):
该函数将Date对象格式化为指定的日期/时间字符串。示例代码如下:
Date date = new Date();
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String str = df.format(date);//当前时间格式化后的字符串为“2021-10-02 14:25:00”
关键字:格式化、日期、时间字符串
2. SimpleDateFormat类的parse函数(String source) throws ParseException:
该函数将String对象解析为Date对象,其中source是要解析的字符串。如果解析不成功,将引发ParseException异常。示例代码如下:
String str = "2021-10-02 14:25:00";
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = df.parse(str);//字符串
