当前位置: 首页 > news >正文

JAVA+AI教程-第四天

一维数组-概述,静态初始化

数组是什么?

我们进行数据存储第一想法是什么?

是变量吗?用变量处理批量数据,会显得非常臃肿

如果我们让ai给我们解决它会给我们一种什么样的方案呢?

很显然,ai给了我们一个全新的方案,利用数组存储数据,取出,这样的好处就是我们只需要定义一个数组,而不是多个变量

知识点

数据的访问

数据明[索引]

一维数组-动态初始化

动态初始化数组就是我们没办法在一开始就让数组都有数据,而是仅仅定义它的长度,因此呢就不能按照之前的方法

动态初始化数组语法:

数据类型[] 数组名=new 数据类型[长度];

数组的遍历:一个一个数据进行访问

为什么要遍历数组?怎么遍历

一维数组-求最值

对于标注的部分,我们正常不用变量也是可以的,ai就是这种做法,但是我们还是利用了变量,因为我们一直用数组

代替

性能优化:那么第一次数组比较的时候我们进行了一次查找,第二次max=数组[]有进行了查找,因此为了提高效率,

我们用变量储存,这样只需要一次遍历

一维数组-数组的综合案例

开发一个简易版的斗地主程序,要求只完成做牌(存储五十四张牌),洗牌

package com.mengchen;

public class 斗地主 {

    public static void main(String[] args) {

        System.out.println("现在是斗地主顺牌阶段");

        //我们首先定义一个54长度的数组用来储存所有的牌(长度是54,实际上是[0,53)

        String[] packageCards = new String[54];

        String[] numbers = new String[]{"A", "2", "3", "4", "5", "6", "7", "8", "9", "10", "J", "Q", "K"};

        String[] colors = new String[]{"", "", "", ""};

        int index = 0;

        // 正确填充52张普通牌 

            for (int i1 = 0; i1 < numbers.length; i1++) {

                for (int i2 = 0; i2 < colors.length; i2++) {

                    packageCards[index++] = colors[i2] + numbers[i1];

                    /*上面的index++真是让我研究了一会,我一直感觉哪里不对,咱们前面的逻辑都是正确的,如果不是index++,而只是index,那么

                    我们的index就会一直往下顺,到k,你可以把++去掉,所以,我们妙用index++实现了每一次循环之后都能让index1*/

                }

            }

        // 加入大小王

        packageCards[52] = "小王";

        packageCards[53] = "大王";

        // 打印所有的牌

        for (int i = 0; i < packageCards.length; i++) {

            System.out.print(packageCards[i] + " \t");

        }

        System.out.println("");

        System.out.println("接下来是洗牌阶段");

        for (int i = 0; i < packageCards.length; i++) {

            int randomIndex = (int) (Math.random() * packageCards.length);

            String temp = packageCards[i];

            packageCards[i] = packageCards[randomIndex];

            packageCards[randomIndex] = temp;

        }

        System.out.println("洗牌之后:");

        for (int i = 0; i < packageCards.length; i++) {

            System.out.print(packageCards[i] + "\t");

        }

    }

}

二维数组-概述,定义

遍历二维数组的方法

 

http://www.lryc.cn/news/602632.html

相关文章:

  • 2,智能制造,MOM,MES - 柔性制造(具体内容参考PPT文档)
  • 接口测试核心概念与实践指南
  • 分享一个脚本,从mysql导出数据csv到hdfs临时目录
  • 安装及使用vscode
  • 基于EKF的单站相位差变化率定位实现
  • 【论文阅读】Safety Alignment Should Be Made More Than Just a Few Tokens Deep
  • Solidity基础(教程①-简单数字存储)
  • AI项目实战:使用Python进行专业级数据集处理的完整教程
  • MySQL面试题及详细答案 155道(001-020)
  • 生产力效能跃升 金士顿DDR5 5600内存
  • JavaWeb 新手学习路线:从零到全栈开发,系统掌握企业级 Web 开发技能
  • 经典算法题解析:从思路到实现,掌握核心编程思维
  • 开发笔记 | 实现人物立绘的差分效果
  • 四、计算机组成原理——第5章:存储系统
  • 电子电路原理学习笔记---第4章二极管电路---第3天
  • 架构师增效指南:飞算JavaAI:需求驱动下的智能微服务拆分与治理
  • 浏览器安全演进:从裸指针到 raw_ptr 的实践与思考
  • leetcode 2044. 统计按位或能得到最大值的子集数目 中等
  • RV1126B-P机器视觉应用AIoT及边缘计算算力达2.0支持 HDR 、 3DNR
  • 网安学习NO.19
  • 构建 P2P 网络与分布式下载系统:从底层原理到安装和功能实现
  • SystemClock_Config 函数解析
  • Office-PowerPoint-MCP-Server – 基于MCP的开源PPT生成与编辑工具
  • 【WRF-Chem第二期】WRF-Chem有关 namelist 详解
  • Leaflet 综合案例-矢量图层控制
  • Python Pandas.merge_ordered函数解析与实战教程
  • OpenLayers 综合案例-区域掩膜
  • springCloudAlibaba集成Dubbo
  • Yolo底层原理学习--(第二篇)
  • 【HTTP】防XSS+SQL注入:自定义HttpMessageConverter过滤链深度解决方案