一、循环
1.for循环
for循环的格式:
for(初始化语句;条件表达式;控制体语句){
循环体语句;
}
for循环的执行流程:
1)执行初始化语句;
2)判断条件是否成立;满足条件执行3);否则结束循环;
3)执行循环体语句;
4)执行控制体语句;再执行2)过程
例:求100-999之间的水仙花数:
class ForTest{
public static void main(String[] args){
//水仙花数:明确了范围: 100-999之间
//明确循环次数:for
for(int x = 100 ; x < 1000; x++){
//定义三个变量:分别获取每个位上的数据本身
int ge = x % 10 ;
int shi = x / 10 % 10 ;
int bai = x / 10 /10 % 10 ;
//判断
if(x == (ge*ge*ge+shi*shi*shi+bai*bai*bai)){
//获取水仙花
System.out.println("水仙花数是:"+x) ;
}
}
}
}
2.while循环
while循环的格式:
初始化语句;
while(条件表达式){
循环体语句;
控制体语句;
}
while循环的执行流程:
1)执行初始化语句;
2)判断条件是否成立;满足条件执行3);否则结束循环;
3)执行循环体语句;
4)执行控制体语句;再执行2)过程,直到不满足循环条件;
for循环与while循环的应用场景:
for循环再明确循环次数是使用;
while循环再不明确循环次数是使用;
3.do while循环
do while 循环的格式:
初始化语句;
do{
循环体语句;
控制体语句;
}while(条件表达式) ;
do while循环:优先循环体语句,即使条件不成立,循环体至少执行一次!
4.死循环
死循环的两种格式:
for( ; ; ){
循环体语句;
}
while(true){
循环体语句;
}
跳出循环的条件:
break; 结束循环;(不能单独使用,再switch 中使用);
continue: 结束当前循环并立即进入下一个循环;
二、方法(函数)
1.方法的定义格式:
1)有具体返回值的方法定义:
public static 返回值类型 方法名(形式参数列表){
方法中的业务逻辑代码…
return 结果;
}
2)没有具体返回值的方法定义格式:
public static void 方法名(形式参数列表){
直接输出语句;
}
有明确返回值的方法一般采用赋值调用;
没有明确返回值的方法采用直接调用;
2.方法的重载
方法重载 :方法名相同,参数列表不同,与返回值无关!
参数列表不同的情况:
1)参数个数不同
2)参数类型不同
方法重载的目的:就是为了提高某个功能的扩展性,在有的时候:同一个方法,可以传递任何数据类型
三、数组
数组是存储多个数据的容器,且容器中的诗句类型必须保持一致.
1.数组的定义:
1)动态定义:
数据类型 数组名称[ ] = new 数据类型[ 数组长度] ;2)静态定义:
数据类型 数组名称[ ] = {元素};
访问数组可以通过数组的角标进行访问.
2.冒泡排序
冒泡排序的思想:
两两比较,较大的值往后放,第一次比较完毕,最大值出现在最大索引处
每次比较次数都比前一次少一次
实例:
import java.util.Scanner;
class BubbleSort{
public static void main(String[] args){
//int arr[] = {12,52,8,13,25,6};
//创建键盘录入对象
Scanner sc = new Scanner(System.in);
System.out.println("输入");
//键盘输入数组的长度
int x = sc.nextInt();
//键盘输入数组的元素
int[] a = new int[x];
System.out.println("这个数组的长度是:"+x);
System.out.println("请输入数组的元素:");
for (int i = 0 ;i<a.length;i++){
a[i] = sc.nextInt();
}
sort