首页 > 编程语言 > java基础语法之一维数组的应用案例

java基础语法之一维数组的应用案例

时间:2023-12-14 19:32:27浏览次数:30  
标签:arr java int max 最大值 语法 数组 println

一:概述

在前面已经介绍了一维数组的相关语法知识,下面来讲一下具体案例的实现。

二:具体说明

<1>数组的遍历

  • 数组遍历指的是:获取数组中的每一个元素,我们可以把获取到的元素输出在控制台

具体代码和运行截图如下:

public static void main(String[] args) {
       //定义数组并初始化
       int[] arr = {99, 188, 201, 256, 89, 100};

       //获取数组中的元素
//        System.out.println(arr[0]);
//        System.out.println(arr[1]);
//        System.out.println(arr[2]);
//        System.out.println(arr[3]);
//        System.out.println(arr[4]);

       //用循环改进
//        for (int i=0; i<5; i++) {
//            System.out.println(arr[i]);
//        }

       //格式:数组名.length
//        System.out.println(arr.length);

       for (int i=0; i<arr.length; i++) {
           System.out.println(arr[i]);
       }

                              java基础语法之一维数组的应用案例_i++

<2>获取数组中的最大值

1因为我们最终,要得到最大值,所以,这里我们定义一个变量,用于保存最大值。

但是,因为我们最终获取的是数组中的最大值。所以,我们就要从数组中找一个值作为初始值一般选取arr[0]。

2:这样我们的最大值变量就有初始值了,接下来,我们与数组中剩余的数据逐个比较,比完之后,max中最终保存的是最大值。

3:我们每次比较,需要把最大值保存到max变量中,这个动作,我们可以通过if语句实现。

4:当循环结束后,打印max变量就可以了,这个max里面保存的就是最大值。

具体的代码如下:

 //定义数组并初始化
       int[] arr = {99, 188, 201, 256, 89, 100, 300, 500};

       //定义变量max存储最大值,取第一个数据为变量的初始值
       int max = arr[0];

       //与数组中剩余数据逐个比对,每次比对将最大值保存到变量max中
       for (int i=1; i<arr.length; i++) {
           if(arr[i] > max) {
               max = arr[i];
           }
       }
       //循环结束后输出变量max的值
       System.out.println("最大值为:" + max);
   }

运行截图如下:

                              java基础语法之一维数组的应用案例_数组_02

<3>打乱数组中的元素

  • 元素打乱就是把数组中的元素随机交换位置,每次运行都可能产生不一样的结果,具有偶然性

比如:arr = {456, 234, 45, 56, 78, 145, 78};

遍历:

  • 正常情况下:456, 234, 45, 56, 78, 145, 78
  • 元素打乱后:234, 45, 56, 78, 456, 145,234

涉及到的操作:

  • 获取数组中元素的随机索引
  • Random r = new Random();
  • int index = r.nextInt(arr.length);

具体代码如下:

public static void main(String[] args) {

        //定义数组
        int[] arr = {900, 645, 598, 20, 690};


        Random r = new Random();
        for (int i = 0; i < arr.length; i++) {
            int index = r.nextInt(arr.length);

            // 进行数据的交换,进而实现打乱数据
            int temp = arr[i];
            arr[i] = arr[index];
            arr[index] = temp;
        }

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

    }


}

运行截图如下所示:

                              java基础语法之一维数组的应用案例_i++_03

标签:arr,java,int,max,最大值,语法,数组,println
From: https://blog.51cto.com/u_15912723/8822680

相关文章

  • 无涯教程-Java - asin()函数
    该方法返回指定双精度值的反正弦值。asin()-语法doubleasin(doubled)这是参数的详细信息-d - 双精度数据类型。asin()-返回值此方法返回指定双精度值的反正弦。asin()-示例publicclassTest{publicstaticvoidmain(Stringargs[]){doub......
  • java实验
    零.前置芝士(可以不了解)信息量定义信号量(semaphore)是操作系统中用来解决并发中的互斥和同步问题的一种方法。是可以用来保证两个或多个关键代码段不被并发调用。目的类似计数器,常用在多线程同步任务上,信号量可以在当前线程某个任务完成后,通知别的线程,再进行别的任务。同步:处......
  • 用JAVA实现大文件上传及显示进度信息
    一. 大文件上传基础描述:各种WEB框架中,对于浏览器上传文件的请求,都有自己的处理对象负责对Http MultiPart协议内容进行解析,并供开发人员调用请求的表单内容。比如:Spring 框架中使用类似CommonsMultipartFile对象处理表二进制文件信息。而.NET 中使用HtmlInputFile/ Ht......
  • 无涯教程-Java - tan()函数
    该方法返回指定双精度值的切线。tan()-语法doubletan(doubled)这是参数的详细信息-d  - 双精度数据类型。tan()-返回值此方法返回指定双精度值的切线。tan()-示例publicclassTest{publicstaticvoidmain(Stringargs[]){doubledegrees=......
  • Java实现异步的几种方式
    普通线程实现异步,但频繁创建、销毁线程比较耗资源,所以一般交给线程池执行//创建需要异步执行的逻辑publicclassAsyncThreadimplementsRunnable{@Overridepublicvoidrun(){System.out.println("异步线程开始");longstart=System.current......
  • 秦疆的Java课程笔记:69 面向对象 Super详解
    super调用父类属性//首先写一个父类publicclassPerson{protectedStringname="1";}//然后写一个子类publicclassStudentextendsPerson{privateStringname="2";publicvoidtest(Stringname){System.out.println(name)......
  • java集合和文件数据互转
    一、集合到文件packagecom.itbianma01;importjava.io.BufferedWriter;importjava.io.FileWriter;importjava.io.IOException;importjava.util.ArrayList;publicclassDemo{publicstaticvoidmain(String[]args)throwsIOException{ArrayList<......
  • 秦疆的Java课程笔记:70 面向对象 方法重写
    重写都是方法的重写,和属性没有关系。//父类写一个静态方法======================publicclassA{publicstaticvoidtest(){System.out.println("A=>test()");}}//子类也写一个静态方法====================publicclassBextendsA{......
  • Linux_3.2 Shell语法
    1循环语句1.1for…in…do…done命令格式:forvarinval1val2val3#类似于枚举do语句1语句2...done示例1,输出a2cc,每个元素一行:foriina2ccdoecho$idone示例2,输出当前路径下的所有文件名,每个文件名一行:forfilein`ls`#$(ls)d......
  • java字符流
    一、概述1、为什么出现字符流2、编码表 3、字符串的编码和解码 4、字符流的编码和解码问题 二、字符流写数据的五种方式  1、写一个字符 2、写一个字符数组 3、写入字符数组的一部分   4、写一个字符串 5、写入字符串的一部分 ......