2018/08/15日志 数组、条件与循环、排序

一、数组

1、特点:a、数据类型相同  b、按顺序排列
2、声明数组
    (1)声明一维数组:
    //只能在声明的时候赋值
    第二种:double [] string = new double [] {99,89.0,93.0};
    //可以先声明再赋值
    /*
     * double [] scores;
     * scores = {99,89.0,93.0};错误
     * double [] string;
     * string = new double [] {99,89.0,93.0};正确
     * /
     (2)声明二维数组//区别同上
    第一种:String[] [] strings =new String[] []{{"xiaohong","123"},
    {"xiaoming","234"},{"xiaolin","345"}};
    第二种:String[] [] sttrings ={{"xiaohong","123"},
    {"xiaoming","234"},{"xiaolin","345"}};
3、指定长度
    (1)、一维数组
    double [] strring = new double[3];//指定长度
    (2)、二维数组
4、加强循环
    for (double i:string) {
         System.out.println(i);
    }//string为数组名
    *********************************
    //遍历二维数组加强循环
    for(String [] abc:strings) {
        for(String bcd:abc) {
            System.out.println(bcd);
        }
    }

二、条件与循环

1、if条件分支语句
if(布尔表达式1){
    //布尔表达式1为true时执行的代码
 }else if(布尔表达式2){
    //布尔表达式1为false但是布尔表达式2为true时执行的代码
}else if(布尔表达式3){
    //布尔表达式1和布尔表达式2为false但是布尔表达式3为true时执行的代码
}else{
    //布尔表达式1、布尔表达式2和布尔表达式3均为false时执行的代码
}
【注意:1、if分支语句中去掉括号,则对第一行代码有效;2、else不能单独使用。】
2、switch条件分支语句
switch ( 表达式 ) {  
    case 常量1 :{
    当表达式的值等于整型常量1时执行的语句; 
    break;//当一种情况包含其他情况时
    }
    case 常量2 :{
    当表达式的值等于整型常量2时执行的语句; 
    break;
    }
   ......
    default:{
    当表达式的值不满足任何一个case的值时,执行的语句;
    }
}
3、for循环
    for (int i = 0;i  < 100 ;i++  ){
        System.out.println("a");
    } 
4、while循环   
    while(布尔型循环条件){
        循环代码块
    }
    do {
        循环操作
    } while ( 布尔型循环条件); 

三、排序

1、冒泡排序
    int [] numbers = {1,2,3,4,5};
    for(int time=1;time<numbers.length;time++) {
        for(int i=0;i<numbers.length-time;i++) {
            if(numbers[i]>numbers[i+1]) {
                numbers[i]=numbers[i]+numbers[i+1];
                numbers[i+1]=numbers[i]-numbers[i+1];
            }
        }
    }
    for (int i : numbers) {
        System.out.println(i);
    }
2、插入排序
    int [] num= {1,2,4,5,5,3};
    int date = num[5];
    for(int i=0;i<num.length-1;i++) {
        if(num[i]>date) {
            int f = i;
            for(int j=num.length-1;j>i;j--) {
                num[j]=num[j-1];
            }
            num[f]=date;
            break;
        }
    }
    for (int p : num) {
        System.out.println(p);
    }
3、值传递和地址传递
    //地址传递
    int [] nums = {1};
    int [] bers = nums;
    bers[0] = 0;
    System.out.println(nums[0]);
    //结果:0


    //值传递
    int [] num = {1};
    int [] age = {num[0]};
    age[0] = 2;
    System.out.println(num[0]);
    //结果:1
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值