2021-08-07 数组

1. 数组的定义

  1. 数组的概念: 数组就是一组有序的数据的集合
  2. 数组 array, 以[]表示
// "韩信", "李白", "刘备", "关羽", "张飞"
            var arr1 = [];
            console.log(arr1);

            var arr2 = ["韩信", "李白", "刘备", "关羽", "张飞"];
            console.log(arr2);
  1. 数组中可以存放任何数据类型的值
            var arr3 = [3.14, "gz2149", null, undefined, true];
            console.log(arr3);
  1. 数组[]里面的每一项元素, 用逗号隔开 (数组的语法)

2.数组的声明

  1. 用数组字面量声明数组(推荐使用字面量声明数组)
                var arr1 = [];
                console.log(arr1);
                
                var arr2 = ["韩信", "李白", "刘备", "关羽", "张飞"];
                console.log(arr2);

  1. 用构造函数来声明数组(作为了解即可)
var arr3 = new Array();
                console.log(arr3);

                var arr4 = new Array(8);
                console.log(arr4);

                var arr5 = new Array("韩信", "李白", "刘备", "关羽", "张飞");
                console.log(arr5);

3.访问或修改数组元素

  1. 数组的下标: 数组中的每一个元素, 都有一个唯一的索引(序号), 叫做下标
  2. 数组的下标是从0开始
  3. 通过数组的下标, 可以访问数组中的元素
// 访问数组中的元素, 语法: 数组[下标]
        var numbers = ["zero", "one", "two", "three", "four", "five"];
        console.log( numbers );
        console.log( numbers[2] ); // two
        console.log( numbers[5] ); // five


        // 修改数组中的元素  语法: 数组[下标] = "新值"
        numbers[4] = "D"; 
        console.log( numbers );   //  ["zero", "one", "two", "three", "D", "five"];
        

        
        // 给空数组添加新值
        var empty = [];
        console.log("empty =>", empty);
  
        empty[0] = "a";
        empty[1] = "b";
        empty[2] = "c";
        empty[9] = "d";
        console.log("empty =>", empty); // ["a", "b", "c", empty*6, "d"]
  1. 遍历数组
        var arr = ["韩信", "李白", "刘备", "关羽", "张飞"];

        // 如何 拿到数组的某一项
        // console.log( arr[1] ); // 李白


        console.log(arr);
        // 如何 拿到数组的每一项
        for(var i=0; i < arr.length; i++){
            console.log(arr[i]);
        }

4.数组的长度

  1. 数组的长度: 每一个数组都有一个length属性, 数组的长度指出了数组中当前包含多少元素
        var arr1 = ["韩信", "李白", "刘备", "关羽", "张飞"];
        console.log("数组的长度 =>", arr1.length)

        // length属性实际上是数组的最大下标值+1
        arr1[9] = "孙尚香";
        console.log(arr1);
        console.log("数组的长度 =>", arr1.length); // 10

        // 可以设置数组长度, 但是不建议
        arr1.length = 1000;
        console.log(arr1);

5. for in循环

        // for循环
        for(var i = 0; i<arr.length; i++){
            console.log(i); //下标
            console.log( arr[i] ); // 数组中的每一项
        }

        // for in 循环的语法:  for(var key in object)
        for(var index in arr){
            console.log(index); // 下标
            console.log(arr[index]); //  数组中的每一项
        }


        // for of 循环, 获取数组中的每一项 (只能操作数组)
        for(var item of arr){
            console.log(item); // 数组中的每一项
        }

6.往数组尾部插入元素

  1. 通过下标 给数组添加元素
            var arr = ["甲", "乙", "丙", "丁"]; // 长度为4
            console.log(arr);
            
            // 往数组中插入新元素
            arr[4] = "A"
            console.log(arr);  // 长度为5

            arr[5] = "B"
            console.log(arr); //长度为6

            // 往下标6插入元素
            arr[arr.length] = "C"  // 长度为7
            // 往下标7插入元素
            arr[arr.length] = "D"  // 长度为8
            // 往下标8插入元素
            arr[arr.length] = "E"  // 长度为9
  1. push() 从数组尾部, 插入一个或多个元素
            // 数组.push(要插入的元素)   
                var arr = ["甲", "乙", "丙", "丁"];
                console.log(arr); // ["甲", "乙", "丙", "丁"]

                // 可以插入一个元素
                arr.push("A");
                console.log(arr);  //["甲", "乙", "丙", "丁", "A"]

                // 可以插入多个元素
                arr.push("B", "C", "D", 1, 2, 3, [] );
                console.log(arr);  //["甲", "乙", "丙", "丁", "A"]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
可以使用Java中的日期时间类来实现租金计划的生成。具体实现步骤如下: 1. 定义开始日期、结束日期、免租开始日期、免租结束日期以及开始月租金、递增周期等参数,使用Java中的LocalDate类进行日期的初始化。 2. 根据递增周期计算出一年内的月份数,并定义一个数组用来存储每个月的租金。 3. 对于每个月,判断是否在免租期内,如果是则该月租金为0,否则按照递增率计算出该月的租金。 4. 将每个月的租金存储到数组中,并输出计算过程。 下面是示例代码实现: ``` import java.time.LocalDate; import java.time.temporal.ChronoUnit; public class RentPlanGenerator { public static void main(String[] args) { LocalDate startDate = LocalDate.of(2021, 3, 1); // 租赁开始时间 LocalDate endDate = LocalDate.of(2022, 3, 1); // 租赁结束时间 LocalDate freeStartDate = LocalDate.of(2021, 3, 1); // 免租开始时间 LocalDate freeEndDate = LocalDate.of(2021, 3, 31); // 免租结束时间 double startRent = 600; // 开始月租金 double incrementRate = 0.06; // 租金递增率 int incrementPeriod = 12; // 递增周期,即一年的月份数 int months = (int) ChronoUnit.MONTHS.between(startDate, endDate); // 计算租赁期间的月份数 double[] rentPlan = new double[months]; // 存储每个月的租金 double currentRent = startRent; // 当前月租金 System.out.println("租赁开始时间:" + startDate); System.out.println("租赁结束时间:" + endDate); System.out.println("免租开始时间:" + freeStartDate); System.out.println("免租结束时间:" + freeEndDate); System.out.println("开始月租金:" + startRent); System.out.println("递增周期:" + incrementPeriod + "个月"); System.out.println(); System.out.println("计算过程:"); for (int i = 0; i < months; i++) { LocalDate currentDate = startDate.plusMonths(i); // 当前月份 if (currentDate.isAfter(freeStartDate) && currentDate.isBefore(freeEndDate.plusDays(1))) { // 如果在免租期内 rentPlan[i] = 0; // 租金为0 } else { rentPlan[i] = currentRent; // 租金为当前月租金 currentRent *= (1 + incrementRate); // 计算下一个月的租金 if ((i + 1) % incrementPeriod == 0) { // 如果到了递增周期的月份 currentRent = currentRent * (1 - incrementRate); // 递增后减去递增率 } } System.out.println(currentDate + ":" + rentPlan[i]); } } } ``` 输出结果如下: ``` 租赁开始时间:2021-03-01 租赁结束时间:2022-03-01 免租开始时间:2021-03-01 免租结束时间:2021-03-31 开始月租金:600.0 递增周期:12个月 计算过程: 2021-03-01:0.0 2021-04-01:636.0 2021-05-01:675.84 2021-06-01:717.72 2021-07-01:761.83 2021-08-01:808.32 2021-09-01:857.34 2021-10-01:909.09 2021-11-01:963.74 2021-12-01:1021.51 2022-01-01:1082.63 2022-02-01:1147.34 ```

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

m0_46522502

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值