main方法与其他方法唯一区别在于它是由虚拟机调用的
条用一个方法,系统都会将参数、局部变量存储在一个称为堆栈的内存区域中
堆栈的理解:
栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。
堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。
参考链接:https://www.zhihu.com/question/19729973
在java的方法中,对于基本数据类型,传递的是实参的值,对于数组类型的参数,参数值是数组的引用,给方法传递的
是这个引用,例如:method(int a,int b) 与 method(int[] a)
十进制转换为十六进制:不断用被除数除以16直到商为0而得到的结果逆顺序排列
注:在调用方法的时候,java编译器会寻找最精确匹配的方法,精确程度一样的两个方法调用有歧义,会产生编译错误
例如:max(int,double) 与max(double,int)
Math数学类:1、三角函数 2、指数函数 3、取整
指数函数:1、exp(double x) :e的x次幂
2、log(doube x): 以e为底,x的对数
3、log10(double x) 以10为底,x的对数
4、pow(double a,double b) a的b次幂
5、sqrt(double) 根号x
取整方法:ceil(double x ):向上取整
floor(double x) :向下取整
rint(double x)
round(...)
取随机数:0.0<=Math.random()<1.0
a+Math.random()*b :返回在a到a+b之间但不包括a+b的随机数
数组:
double[] mylist = new double[10]
mylist实际存储的是指向数组的引用。 数组的默认值:基本数据类型:0 ,char:‘\u0000‘ , bollean :false
可变长参数列表:typeName...parameterName(类型名...参数名)