资讯专栏INFORMATION COLUMN

Java - 数组基本应用

paulquei / 1591人阅读

摘要:问题生成个长度为的存储类型元素的数组,以随机的方式为数组元素赋值且其值不得重复,能够打印其中最大的数组元素的值和索引。

问题

生成1个长度为10的存储int类型元素的数组,以随机的方式为数组元素赋值且其值不得重复,能够打印其中最大的数组元素的值和索引。

Main文件
import java.util.Random;

public class Main {

    public static void main(String[] args) {
        int array[];
        array = new int[10];

        p:for(int i = 0; i < 10;){      // 表达式 3 为空
            int value = make_random();  // 生成随机数
            for(int m = 0; m < i; m++){ // 判断是否有重复
                if(value == array[m]){  // 如果有重值
                    continue p;         // 进行  p语块  下一次循环
                }
            }
            array[i] = value;   // 给数组赋值
            i++;                // 数组下标值  + 1
        }

        ArrayMessage(array);    // 输出随机生成的数组
        Max_And_Min(array);     // 输出最大值和其索引
    }

    /**
     * 生产随机数
     * @return
     */
    public static int make_random(){
        Random rnd = new Random();  // 实例化一个对象
        int tmp = rnd.nextInt(10);  // 生成100以内的随机数
        return tmp;                 // 返回随机数
    }

    /**
     * 输出数组信息
     * @param array
     */
    public static void ArrayMessage(int array[]){
        System.out.print("生成的随机数组为:
[");
        for(int i = 0; i < 9; i++){
            System.out.print(array[i] + ",");
        }
        System.out.println(array[9] + "]");
    }

    /**
     * 输出数组的最大值及其索引
     * @param array
     */
    public static void Max_And_Min(int array[]){
        int max = array[9];             // 定义最大值的初值为数组的任一个元素,这样可以减少比较次数
        int mark = 9;                   // 定义最大值的索引初值为该元素的索引;
        for(int i = 0; i < 10; i++){    // 遍历数组的所有
            if(array[i] >= max){        // 如果某个元素大于等于最大值
                max = array[i];         // 把该元素的设为最大值
                mark = i;               // 把该元素的索引赋给mark
            }
        }
        System.out.print("其中数组元素的最大值为:" + max + " , 索引为:" + mark);
    }
}
控制台输出

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/64198.html

相关文章

  • 基本排序 - Algorithms, Part I, week 2 ELEMENTARY SORTS

    摘要:我们讨论比较排序算法的理论基础,并结合本章应用排序和优先级队列算法。基本排序引入了选择排序,插入排序和。描述了,一种保证在线性时间内运行的排序算法。当我们后续实现排序算法时,我们实际上将这个机制隐藏在我们的实现下面。 前言 上一篇:栈和队列下一篇:归并排序 排序是重新排列一系列对象以便按照某种逻辑顺序排列的过程。排序在商业数据处理和现代科学计算中起着重要作用。在交易处理,组合优化,天体...

    BLUE 评论0 收藏0
  • Java学习笔记(一)

    摘要:是完全面向对象的语言,对象具有状态行为和标识。类一一是具有共同特征和行为的一类事物的统称。受保护的,对同一包内的类和所有子类可见。一种通用的内存池,用于存放所有对象。类级变量又称全局级变量或静态变量,需要使用关键字修饰。 java语言的基本特点 java语言是面向对象的高级程序设计语言,它是编译型的语言,Java语言不使用指针,并提供了自动的垃圾回收机制,使得程序员不必为内存管理而担...

    chengtao1633 评论0 收藏0
  • 【三万粉丝终极福利】Python、C、Java三大语言学习路线和资源整理

    摘要:今天给大家带来三万粉丝三大语言学习路线和资源整理,收藏就对了。还有对数组面向对象和异常处理等。语言学习路线一基础阶段技能树掌握脚本界面编程能力数据库基本爬虫多线程多进程开发能力,可以胜任基本的开发工作。 大家好,我是辣条。 今天给大家带来三万粉丝三大语言学习路线和资源整理,收藏就对了。 目录...

    GitChat 评论0 收藏0
  • Java虚拟机如何加载类的?

    摘要:虚拟机有个一加载机制,叫做双亲委派模型。扩展类加载器扩展类加载器的父类的加载器是启动类加载器。验证验证的目的就是需要符合虚拟机的规范。虚拟机会通过加锁的方式确保方法只执行一次。 引言 上一篇文章谈到Java运行的流程,其中有一环是类加载。今天就继续深入探讨JVM如何加载虚拟机。首先JVM加载类的一般流程分三步:·加载·链接·初始化那么是否全部Java类都是这样三步走的方式加载呢?我们可...

    TANKING 评论0 收藏0
  • Java 我来了

    JAVA SE、JAVA EE、JAVA ME之间什么关系? JAVA SE 是Java EE和Java ME的基础。包含Java语法和Java工具包,用于开发桌面应用 JAVA EE 是基于JAVA SE的一套开发WEB应用的规范接口,用于开发WEB应用 JAVA ME 是基于JAVA SE的一套开发移动嵌入式应用的规范接口,用于开发移动嵌入式应用 JDK、JRE、JVM之间什么关系?...

    姘存按 评论0 收藏0

发表评论

0条评论

paulquei

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<