Java学习基础笔记
方法
什么是方法?如果类比于C语言的话,就很像是C语言中的函数。
1.方法的定义:方法就是一段代码的组合,能够完成一个独立的功能,可以反复调用。
语法形式:
public static 返回值类型 方法名称(类型 参数1,类型 参数2){
return 表达式;
}
这里面public static,public是最大权限修饰符,static是静态的意思,如果返回值为void,那么返回值return就可以省略不写。
2.方法的调用类名.方法名(实参1,实参2…):
public class DEMO{
public static void main(类型 参数1,类型 参数2){
DEMO.test(实参1,实参二);}
public static void test(类型 参数1,类型 参数2){
System.out.println("我爱你中国!我爱你YY!")
}
}
此时就实现了DEMO类中调用了test方法。
##方法的重载
拿到一个新词,那我们首先想的是这个新词的定义是什么?
顾名思义,重载就是多重的加载,对于一个方法来说,多重的加载就相当于该方法(函数)传入了多个不同类型的数据类型,比如下列:
public class Demo{
public static void main(String[] args){
System.out.println("I Love you!");
System.out.println(520);
System.out.println(true);
System.out.println('Y');
}
}
这里的println(),分别有四种数据类型,经过println(),在回过头来看一下println()方法,我们就可以大致得出结论,println()方法必然是存在多个参数传入接口。
方法重载有以下特点:
1.在同一个类及同一个方法下
2.参数的类型,个数,顺序不同
3.与修饰符以及返回值类型无关
方法(函数)递归
方法的递归实际上就是方法自身调用自己
public class Demo{
public static void main(String[] args){
int x=4;
System.out.println(jiecheng(x));
}
public static int jiecheng(int x){
if (x==1)
return 1;
else
return x*jiecheng(x-1);
}
}
这里面要注意的是,递归一般使用的是if else结构,判别条件一般是终止条件,然后else最后条件是想产生最后的递归函数。
数组
数组是一个容器,里面存储的是一系列有序且属性相同的元素,特别要注意的是,数组一旦定义完成后,内存空间就分配完毕,长度也随之确定,不能随意更改。
1.数组的创建与赋值:
数据类型[] 变量名=new 数据类型[长度];
数据类型 变量名[]=new 数据类型[长度];
数据类型[] 变量名={数据一,数据二...};
2.数组中的数据类型存放:
可以存放八大数据基本类型,也可以存放三大引用数据类型,但是只能存放一种数据类型,然后对于基本数据类型其数据以及变量名存储在栈内存中,对于引用数据类型的话,就变量名储存在栈内存中,数据储存在堆内存中。
3.数组常用的操作:
数组常见的操作包括数组的遍历,以及数组的查找,其中数组的查找的话,涉及算法包括选择排序法和冒泡排序法。
import java.util.*;//*表示自动匹配java.util包下的所需要的模板,这里主要是Scanner
public class array {
public static void main(String[] args) {
System.out.println("请为字符数组love输入值:");
System.out.println("请输入你要查找的love中的某个字符:");
Scanner input=new Scanner(System.in);/*这里实际上是一个构造方法,在产生input对象的同时,
在Scanner类方法(构造方法)中传入了System.in这个输入参数*/
Scanner finder=new Scanner(System.in);
int test[]= {7,7,5,8,5,2,0};//三种数组的定义方式
String str=input.next();
char c=finder.next().charAt(0);
char[] love=str.toCharArray();//将字符串转换成数组
int[] demo=new int[] {1,2,2,5};
for(int i=0;i<=test.length-1;i++)
{
System.out.print(test[i]+" ");
};
System.out.println();
for(int i=0;i<=demo.length-1;i++) {
System.out.print(demo[i]+" ");
};
System.out.println("");
System.out.print("输入字符串love是:");
for(int i=0;i<=love.length-1;i++)//使用.length获取数组的长度
{
System.out.print(love[i]);
};
System.out.println("");
for(int i=0;i<=love.length-1;i++)//判断c字符在不在love
{
if(love[i]==c)
{System.out.println("字符"+c+"在love里面");break;}
else
{System.out.println("字符"+c+"不在love里面");break;}
}
}
}