数组练习篇

目录:
1.数组的静态初始化 目标:记住两种不同数组初始化形式
2.数组元素的访问
3 程序:定义一个数组,判断有几个是3的倍数
4 程序:定义一个数组,遍历元素,如果是奇数则扩大两倍,反则缩小到原来的二分之一
5 数组的动态初始化
6 数组求最值
7 生成10个1-100之间的随机数存入数组 求和 求比平均值小的数并表示出来
8 依次用键盘输入10个数 并录入数组中
9 定义一个数组将顺序颠倒
10 复习回顾


拓展小知识:将println的ln去掉 就可将所有元素都放在一行 避免一个元素占一行

1 数组的静态初始化 目标:记住两种不同数组初始化形式

package com.itheima.demo1.arraytest;

public class test1 {
    public static void main(String[] args){
        //数组的静态初始化  目标:记住两种不同数组初始化形式
        //标准版和简约版
        //int类型的数组
        int[] arr1 =new int[]{5,6,7};
        int[] array= {1,2,3};
        //String类型的数组
        String[] arr2 = new String[]{"wangweu","zhangsan","lisi"};
        String[] arr3 = {"wangweu","zhangsan","lisi"};
        //Double类型的数组
        Double[] arr4 = new Double[]{10.9,6.6,7.9};
        Double[] arr5 = {10.9,6.6,7.9};
        System.out.println(array);
    }
}

注意:如果直接用System.out.println(array);输出,输出的是数组的地址值



2 数组元素的访问

  • 索引从0开始
package com.itheima.demo1.arraytest;

public class test2 {
    public static void main(String[] args){
        int[] arr1 = new int[]{1,2,3};
        //int[] arr1 = {1,2,3};
        arr1[0]=10;
        int number = arr1[0];
        System.out.println(number);

遍历数组(用arr1.length来代表数组的长度直接用在for循环的判断条件里)

        //遍历数组
        for(int i=0;i<arr1.length;i++){
            System.out.println(arr1[i]);
        }



程序:定义一个数组,判断有几个是3的倍数

package com.itheima.demo1.arraytest;

public class test3 {
    public static void main(String[] args){
        //定义一个数组,判断有几个是3的倍数
        int[] arr1={1,3,4,6,7,9};
        int count=0;
        for(int i=0;i<arr1.length;i++){
            if(arr1[i]%3==0){
                System.out.println(arr1[i]);
                count++;
            }
        }
        System.out.println(count);
    }
}




程序:定义一个数组,遍历元素,如果是奇数则扩大两倍,反则缩小到原来的二分之一

package com.itheima.demo1.arraytest;

public class test4 {
    public static void main(String[] args) {
        //定义一个数组,遍历元素,如果是奇数则扩大两倍,反则缩小到原来的二分之一
        double[] arr1 = {1,2,3,4,5,6,7,8,9};
        for(int i=0;i<arr1.length;i++){
            if(arr1[i]%2==0) {
                arr1[i]=arr1[i]*2;
            }
            else {
                arr1[i]=arr1[i]/2;
            }
        }
        //专家建议一个for循环干一件事
        for(int i =0;i<arr1.length;i++){
            System.out.println(arr1[i]);
        }
    }
}




数组的动态初始化

package com.itheima.demo1.arraytest;
public class test5 {
    public static void main(String[] args) {
        //数组动态初始化,定义一个数组,用来存班级中50个学生的姓名,姓名未知
        //定义数组的昌都必须用这种方式
        // int 动态初始化默认为0
        // double默认0.0 char '\u000'
        // 布尔 false    引用数据类型:默认初始化 null
        int[] arr1 = new int[4];
        System.out.println(arr1[0]);
        System.out.println(arr1[1]);
        System.out.println(arr1[2]);
        System.out.println(arr1[3]);
    }
}


数组求最值

package com.itheima.demo1.arraytest;

public class test6 {
    public static void main(String[] args) {
        //索引不可以越界
        //数组求最值
        int[] arr1 = {1,3,5,6,4,9,6,8,3};
        int max = arr1[0];
        for (int i = 0; i < arr1.length; i++) {
            if(max < arr1[i])
                max = arr1[i];
        }
        System.out.println(max);
    }
}


生成10个1-100之间的随机数存入数组 求和 求比平均值小的数并表示出来

package com.itheima.demo1.arraytest;

import java.util.Random;

public class test7 {
    public static void main(String[] args) {
        //生成10个1-100之间的随机数存入数组
        //求和   求比平均值小的数并表示出来
        int sum = 0;
        int avg = 0;
        int[] arr1 = new int[10];
        Random r = new Random();
        for (int i = 0; i < 10; i++) {
            int number = r.nextInt(100) + 1;
            arr1[i] = number;
            sum += number;
        }
        System.out.println("总和是:" + sum);
        avg = sum / 10;
        for (int i = 0; i < 10; i++) {
            if (arr1[i] < avg)
                System.out.println("小于平值的有:" + arr1[i]);
        }
    }
}


依次用键盘输入10个数 并录入数组中

package com.itheima.demo1.arraytest;

import java.util.Scanner;

public class test8 {
    public static void main(String[] args) {
        //依次用键盘输入10个数录入数组中
        Scanner sc = new Scanner(System.in);
        int[] arr = new int[10];
        System.out.println("请开始输入:");
        for (int i = 0; i < arr.length; i++) {
            arr[i] = sc.nextInt();
        }
        for (int i = 0; i < 10; i++) {
            System.out.print(arr[i]+" ");
        }
    }
}
结果为:
请开始输入:
1
2
3
4
5
6
7
8
9
10
1 2 3 4 5 6 7 8 9 10 
Process finished with exit code 0



定义一个数组将顺序颠倒

package com.itheima.demo1.arraytest;

public class test9 {
    public static void main(String[] args) {
        //定义一个数组将顺序颠倒
        int[] arr = {1,2,3,4,5};
        int temp=0;
        for (int i = 0; i < arr.length/2; i++) {
            temp = arr[i];
            arr[i]=arr[arr.length-i-1];
            arr[arr.length-i-1]=temp;
        }
        for (int i = 0; i < arr.length; i++) {
            System.out.println(arr[i]);
        }
    }
}


复习回顾:

package com.itheima.demo1.arraytest;

import java.util.Random;
import java.util.Scanner;

public class test11 {
    public static void  main(String[] args){
        //创建输入对象
        Scanner sc = new Scanner(System.in);
        int x = sc.nextInt();
        //创建随机数对象
        Random r = new Random();
        int y = r.nextInt(11)+90;  //生成90--100 的随机数
        System.out.println(y);
        //数组创建  两种方法
        int[] arr = new int[] {1,2,3,4,5}; //1
        int[] arr1 = {1,2,3,4,5};          //2
        //给数组动态初始化   只有这一种方法
        int[] arr2 = new int[4];
        //用键盘给每个数组元素赋值
        for (int i = 0; i < arr.length; i++) {
            arr2[i]=sc.nextInt();
        }
    }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值