- 循环
- 逻辑控制语句
- 代码实例
- 方法的定义
- 排序
- for 循环---循环次数已知
- while循环---循环次数未知
- do-while循环---循环次数未知,且至少执行一次
for(int i=0;i<10;i++){ //声明变量()中 第一个表达式为计数器,第二个表达式-判断-循环 System.out.println("i+1"); //是否继续的条件。 第三个表达式-计数器的调整(自增自减)
}
随机数的生成:int [] arr=new int [10];//数组声明
for(int i=0;i
arr[i]=(int)(Math.random()*100); // 生成0-100的随机数
System.out.println(Arrays.toString(arr));//Arrays包 打印数组
}
Math类random返回值为double. 取值范围为[0,1),将Math.random()*100得到左闭右开的int 类型
需要进行强制转换,注意是是整体转换为int
扩展:随机生成25~80之间的随机数 //25+[0,1)*55
即 (int)(Math.random()*55)+25
while循环---当型循环特点:循环次数未知
while循环的执行过程:首先判断条件是否为真,条件为真则执行语句,否则跳出循环.
do-while循环---直到型循环特点:循环次数未知,且至少执行一次
do-while 循环语句的特点是先执行循环体,然后判断循环条件是否成立,
do{
//循环体
}while(循环条件);
2.代码实例----------------------(1)随机数组 打印偶数----------------------------
public class Day3_review {
public static void main(String[] args){
int [] arr=new int[10]; //生成动态数组
for(int i=0;i
arr[i]=(int)(Math.random()*100);//赋随机值
if(arr[i]%2==0){
System.out.println(arr[i]);
}
}
}
3.逻辑控制语句 break:跳出循环(结束循环),执行下面的语句。 continue:跳出本次循环,继续执行下次循环
-----------------------(2)判断arr中有没有偶数----------------------------------------
:当找到数组中偶数,就停止
分析:数组中偶数个数未知,要对每一个数组判断 使用for循环
:有没有偶数 最后要输出一个结果 声明一个boolean变量
boolean bool=false;//标识数组中是否有偶数
for(int i=0;i
if(arr[i]%2==0){
bool=true; //进入if说明有偶数
break;//终止循环
}
System.out.println(bool);
}
---------------------------------(3)求非偶数元素的和----------------------------------------------------
int sum=0;
for(int i=0;i
if(arr[i]%2==0) { //跳过偶数的部分
continue; //结束本次循环 跳出当前大括号
}
sum+=arr[i];
}
System.out.println("SUM:"+sum);
------------------------- -----打印1-1000内所有的完数-----------------------------
完数 : 除自身之外所有的因素之和等于它本身 如: 6 1 2 3
//68所有因数之和
//能把68整除的所有数字
int num=68;
for(int i=0;i
if(num%i==0) {
System.out.println("i");
}
}
//完数 : 除自身之外所有的因素之和等于它本身 6 1 2 3
//打印1-1000内所有的完数
int sum=0;(错误) 因素和初始化放在循环外面,导致sum不清零
for(int i=2;i<1000;i++){
int sum=0;
for(int j=1;j
if(i%j==0){
sum+=j;
}
}
if(sum==i){
System.out.println(i+"完数");
}
}
------------------------------(4)打印1000以内所有的质数 只能被1和自身相除的数------------
分析:什么样的数不是质数
boolean bool;
for(int i=2;i<1000;i++){ // i是否为质数
bool =true; //用boolean标记是质数
for(int j=2;j
if(i%j==0){ //能被j整除 这个数就不是质数
bool=false;
}
}
if(bool){
System.out.println(i+"质数");
}
}
4.方法的定义
public 访问权限修饰符
static 静态的, 类的
void 返会值类型 void 方法没有返回值
main 方法名
()中 是参数部分 参数列表 形参&实参 调用这个方法实际执行的参数
{方法体}
return 一个代码块中 return是最后一行代码
方法的返回值类型必须和定义的相同
实参的个数和类型必须和形参对应;
---------------------------------定义一个方法,获取一个(整数)数组的最大值----------------------------
public static int max(int arr []){
for(int i=0;i
max=arr[0]; //最大值为第一个元素
if(max
max=arr[i];
}
}
return max;
}
5. 排序 冒泡排序



