最后
金三银四到了,送上一个小福利!
1、执行顺序不同
while和for循环:先判断,再执行
do-while循环:先执行,再判断
2、适用场景(循环次数固定推荐使用for循环)
for循环只适用于循环次数固定的情况
while和do-while循环无论循环次数是否固定都可以使用
1
2
3
如果你想要学习Java的话,我给你分享一些Java的学习资料,你不用浪费时间到处搜了,从Java入门到精通的资料我都给你整理好了,这些资料都是我做Java这几年整理的Java最新学习路线,Java笔试题,Java面试题,Java零基础到精通视频课程,Java开发工具,Java练手项目,Java电子书,Java学习笔记,PDF文档教程,Java程序员面经,Java求职简历模板等,这些资料对你接下来学习Java一定会带来非常大的帮助,每个Java初学者都必备,请你进我的**Java技术qq交流群127522921**自行下载,所有资料都在群文件里,进去要跟大家多交流学习哦。
五、数组
====
1.数组的概念
在内存中开辟的一串连续的空间,用来存储相同数据类型的,比如:鞋柜只会放鞋子,衣
柜只会用来放衣服
2.数组的基本要素
1、标识符(数组名):数组的名称,用来区分不同的数组
2、数组元素:存放在数组空间中的数据
3、数组下标:对数组中的空间进行编号,区分每个空间,数组下标从0开始,可以通过数
组下标找到对应的空间
4、元素类型:数组的数据类型
3.数组的定义和使用
1、声明数组:告诉计算机数组是什么类型
语法:数据类型[] 数组名 或者 数据类型 数组名[]
比如:String[] args;int[] nums,数组名的命名方式和变量命名方式一样
2、分配空间:告诉计算机要开辟一串连续的多长的空间
语法:数组名 = new 数据类型[数组长度];
比如:scores = new int[30];
第一步和第二步可以一起写
数据类型[] 数组名 = new 数据类型[数组长度];
3、赋值:向开辟好空间里面去存放数据
语法:数组名[数组下标] = 数据;
比如:scores[0] = 60;//表示将数组第一个空间存放了60这个整数
scores[1] = 80;
直接声明数组时就进行赋值
语法:数据类型[] 数组名 = new 数据类型[]{数据1,数据2,数据n};
数据类型[] 数组名 = {数据1,数据2,数据n};
注意:如果在声明数组时就直接赋值,那么不要写数组长度
比如:int[] scores = new int[]{60,80,100,50,60,70};
通过循环的方式动态的录入数据
循环从初始0开始,到数组的最大长度结束,每次加1
for(int i = 0;i < 5;i++){
System.out.println(“请输入第”+(i+1)+“名学生的成绩:”);
scores[i] = input.nextInt();
}
4、数据的使用:将存放在数组空间中的元素拿出来使用
使用循环的方式将存放在每个空间中数据拿出来使用
for(int i = 0;i < 5;i++){
System.out.println(“第”+(i+1)+“名的学生成绩为”+scores[i]);
}
数组名.length表示数组的长度
比如:int[] scores = new int[10];
scores.length = 10;//数组长度为多少,该值就为多少
4.数组的排序
使用Arrays类,使用Arrays的步骤
1、找到有Arrays的商店,语法:import java.util.Arrays;
2、Arrays是一个公用的工具,不需要够买,只要去使用就可以,
语法:Arrays.sort(数组名);
它会将该数组进行一个升序的排列
二重循环:在一个循环中再使用一个循环结构
循环特点:外层循环循环一次,内层循环循环一遍(也就是从开始到结束循环完)
while循环,do-while循环和for循环之间可以相互嵌套,也就是说while循环可以放while,
do-while和for循环,其他两种一样
5.二重循环中跳转语句的使用
continue:如果continue在内层循环中,表示结束内层循环的本次循环,开始内层循环的
下一次循环,如果在外层循环表示结束外层循环的本次循环,开始外层循环的
下一次循环,也就是说,continue在哪一个循环的{}中,就结束哪一个循环的
本次循环,开始该循环的下一次循环。
break:如果break在内层循环中,表示结束内层循环的整个循环,开始执行内层循环外面
语句,如果在外层循环中表示结束整个循环,也就是说,break在哪个循环中,结
束的就是哪个循环的整个循环。
六、类和对象
======
1.OO
Object Oriented表示面向对象的意思
2.世界由什么组成
水,陆地,草,人,动物,植物,楼房,汽车等等
由所有一切真实存在的东西组成,这些真实存在的东西就叫作对象
属性:就是对象所具有特征
方法:就是对象所执行的行为或操作
对象:用来描述真实存在事物的一个实体,由一组属性和方法组成
封装:对象的属性和方法通常封装在一起,共同体现事物的特性,两者不可分割
类:将对象共同的属性和方法抽取出来就是类
类是模子,定义对象所具有的属性和方法
3.类和对象的关系
类是抽象的,对象是具体的实体
对象是类的一个实体,类是对象的抽象概念
4.定义一个类的步骤
1、新建一个class,给这个class取一个类名,名字和你想要定义的类型一致
类名的取名方式,使用帕斯卡命名法,所有单词的首字母大写
2、定义类的属性
3、定义类的方法
5.使用定义好的类
1、新建一个对象,语法:类名 对象名 = new 类名();
比如:Car car1 = new Car();
2、通过“.”操作符来使用这个对象的属性和方法
如果你想要学习Java的话,我给你分享一些Java的学习资料,你不用浪费时间到处搜了,从Java入门到精通的资料我都给你整理好了,这些资料都是我做Java这几年整理的Java最新学习路线,Java笔试题,Java面试题,Java零基础到精通视频课程,Java开发工具,Java练手项目,Java电子书,Java学习笔记,PDF文档教程,Java程序员面经,Java求职简历模板等,这些资料对你接下来学习Java一定会带来非常大的帮助,每个Java初学者都必备,请你进我的**Java技术qq交流群127522921**自行下载,所有资料都在群文件里,进去要跟大家多交流学习哦。
七、类的无参方法
========
1.定义类的方法:
语法:返回修饰符 返回值类型 方法名(){
//具体实现方法的操作
}
比如:
public void sayHello(){
//具体实现方法的操作
System.out.println(“你好”);
}
1、访问修饰符(在哪些地方能够使用这个方法),public公共的,最高级别
2、返回值类型,执行完方法后能够得到什么数据
void,表示没有返回值,也就是没有任何数据返回
如果有数据返回,那么就需要使用return关键字返回一个数据,并且返回的数据类型
和返回值的数据类型一致
3、方法名(),方法名表示方法的名字
4、方法体:具体实现方法的操作
2.编写类的方法步骤:
1、先定义方法的访问修饰符,先写没有返回值类型,定义方法名,方法名的命名采用见
文识意的方式
2、定义方法体,也就是写具体实现方法的操作
3、判断方法是否有返回值,如果有,添加return关键字返回该数据,并修改返回值类型
方法是怎么去实现,方法是怎么实现的只需要在定义方法的关心,使用的时候只要知道是哪一个方
法是什么作用就可以了
3.方法的调用:
1、在同一个类调用同一类中的方法,只需要通过方法名()就可以指直接调用
2、在不同类中调用方法,需要先new一个需要调用方法的类的对象,然后通过对象名.方
法名的方式去调用方法
调用方法的时候,实际上就是去执行方法体中的代码
4.常见错误:
1、返回值数据类型必须和返回值类型一致
2、不可以返回多个值,也不能写多个返回值类型
3、定义方法不能够相互嵌套
4、程序逻辑代码(顺序、选择、循环结构)只能写在方法体中
5.面向对象的编程:
类的方法实现某个特定的功能,其他类不需要知道它如何实现,只需要知道它是用来干什
么的
6.全局变量:
(成员变量)它是指定义在类中的变量,它在类中的任意位置都可以被识别,比如:类的属性
1、作用域:作用在类中任意位置
2、初始值不同:如果没有给它赋值,系统会默认给它一个初始值,int类型为0,double
为0.0,String为null
3、在同一个类中不允许同名存在
7.局部变量
它是指定义在方法体中变量,它只能在该方法中被识别
1、作用域:作用在定义该变量的方法体中
2、初始值不同:必须给它赋值后才能去使用,系统不会给它赋初始值
3、在同一个类中,不同的方法中可以存在相同的命名,同名的两个变量没有任何关系
在同一个类中,允许局部变量和成员变量命名相同,如果两个命名一样,在使用时,局部变量有
更高优先级
八、类的有参方法
========
1.带参数的方法:
无参方法:在方法名()的括号中没有参数的方法
有参方法:在方法名()的括号中有参数的方法
2.定义有参方法的语法:
访问修饰符 返回值类型 方法名(参数1、参数2、参数3…参数n){
方法体(具体实现方法的过程)
}
3.参数
实际就是声明的一个变量,声明的变量使用“,”隔开
在定义方法的时候,方法中的参数只是进行了声明,并没有赋值,这个参数就叫做形式参
数,也就是形参;
在调用方法的时候,对方法中参数进行赋值,这个参数就叫作实际参数,也就是实参
4.调用带参数的方法:
同一类中调用同一类中的方法,直接方法名()调用
不同类中调用不同类中的方法,先new一个对象,再通过对象名.方法名()的方式调用
必须和定义方法的参数个数相同,并且数据类型必须一致,顺序也要和定义的位置一致
5.二次传递
在调用方法的时候,传递一个参数值给该方法,然后在该方法中去调用了另外的方法,
再将这个参数值传递给在该方法中调用的这个方法
F5:单步跳入,遇到方法的时候回进入方法体中,逐方法体的代码一行一行的执行
F6:单步跳过,遇到方法的时候直接执行完方法,获得结果,不进入方法体
6.对象数组:就是自己定义的类型的数组
自己定义类型,如果没有new一个对象,那么它的初始就为null
7.包:在windows中以文件夹的方式存在
1)将类分为几个类似于文件夹的单元
2)防止命名冲突,在同一个包不允许重复命名,不同包可以重复
3)可以对类中数据中进行一个保护作用
声明包,语法:package 包名; 必须为java源文件中第一条非注释语句
包名:1、通常由小写的英文字母组成,不能以圆点开头或结尾
2、开头一般是一个顶级域名cn,com,org,net
3、后续部分一般由公司名称、部门名称、小组名称、项目名称
导入包:语法:import 包名;
导入包,可以将在这个包中的所有类导入到我们这个类中,导入后才能使用该包中的类
通过ctrl+鼠标左键点击进入定义方法的位置
九、字符串
=====
1.字符串:就是一个或多个字符组成
2.声明字符串:
最后
一次偶然,从朋友那里得到一份“java高分面试指南”,里面涵盖了25个分类的面试题以及详细的解析:JavaOOP、Java集合/泛型、Java中的IO与NIO、Java反射、Java序列化、Java注解、多线程&并发、JVM、Mysql、Redis、Memcached、MongoDB、Spring、Spring Boot、Spring Cloud、RabbitMQ、Dubbo 、MyBatis 、ZooKeeper 、数据结构、算法、Elasticsearch 、Kafka 、微服务、Linux。
这不,马上就要到招聘季了,很多朋友又开始准备“金三银四”的春招啦,那我想这份“java高分面试指南”应该起到不小的作用,所以今天想给大家分享一下。
请注意:关于这份“java高分面试指南”,每一个方向专题(25个)的题目这里几乎都会列举,在不看答案的情况下,大家可以自行测试一下水平 且由于篇幅原因,这边无法展示所有完整的答案解析
九、字符串
=====
1.字符串:就是一个或多个字符组成
2.声明字符串:
最后
一次偶然,从朋友那里得到一份“java高分面试指南”,里面涵盖了25个分类的面试题以及详细的解析:JavaOOP、Java集合/泛型、Java中的IO与NIO、Java反射、Java序列化、Java注解、多线程&并发、JVM、Mysql、Redis、Memcached、MongoDB、Spring、Spring Boot、Spring Cloud、RabbitMQ、Dubbo 、MyBatis 、ZooKeeper 、数据结构、算法、Elasticsearch 、Kafka 、微服务、Linux。
这不,马上就要到招聘季了,很多朋友又开始准备“金三银四”的春招啦,那我想这份“java高分面试指南”应该起到不小的作用,所以今天想给大家分享一下。
[外链图片转存中…(img-nkpj0eRD-1715404200868)]
请注意:关于这份“java高分面试指南”,每一个方向专题(25个)的题目这里几乎都会列举,在不看答案的情况下,大家可以自行测试一下水平 且由于篇幅原因,这边无法展示所有完整的答案解析