java枚举:初学(2)

保姆级教程:用DaVinci Configurator & Developer从零搭建AUTOSAR OS(TC2xx三核实战) 本文提供了一份详细的AUTOSAR OS配置指南,使用DaVinci Configurator和Developer工具从零开始搭建Infineon TC2xx三核系统。涵盖多核配置协同逻辑、版本兼容性陷阱及验证错误的解决方案,帮助开发者在3小时内构建可运行的多核OS框架。 阅读详情
package qian.com;

//1.如何将枚举元素分类组织
//2.可以通过在一个接口的内部,创建实现该接口的枚举,依次将元素进行分组
interface StudentRank{
    enum PrimaryRank implements StudentRank{
        GRADE_ONE,GRADE_TWO,GRADE_THREE,GRADE_FOUR,GRADE_FIVE,GRADE_SIX;
    }
    enum JuniorRank implements StudentRank{
        JUNIOR_ONE,JUNIOR_TWO,JUNIOR_THREE;
    }
    enum SeniorRank implements StudentRank{
        SENIOR_ONE,SENIOR_TWO,SENIOR_THREE;
    }
}

enum Rank{
    PRIMARY(StudentRank.PrimaryRank.class),
    JUNIOR(StudentRank.JuniorRank.class),
    Senior(StudentRank.SeniorRank.class);
    private StudentRank[] sr;
    private Rank(Class<? extends StudentRank> stu){
        sr = stu.getEnumConstants();
    }

    public StudentRank selectRand(){
        return RandEnumTools.random(sr);
    }
}

//可以将代码组织如下,这样看的有更加清晰:
enum Rank2{
    PRIMARY(StudentRank.PrimaryRank.class),
    JUNIOR(StudentRank.JuniorRank.class),
    Senior(StudentRank.SeniorRank.class);
    private StudentRank[] sr;
    private Rank2(Class<? extends StudentRank> stu){
        sr = stu.getEnumConstants();
    }
    public StudentRank selectRand(){
        return RandEnumTools.random(sr);
    }

     interface StudentRank{
        enum PrimaryRank implements StudentRank{
            GRADE_ONE,GRADE_TWO,GRADE_THREE,GRADE_FOUR,GRADE_FIVE,GRADE_SIX;
        }
        enum JuniorRank implements StudentRank{
            JUNIOR_ONE,JUNIOR_TWO,JUNIOR_THREE;
        }
        enum SeniorRank implements StudentRank{
            SENIOR_ONE,SENIOR_TWO,SENIOR_THREE;
        }
    }
}
public class EnumManage {

    public static void main(String[] args) {
        for(int i=0;i<10;i++){
            for(Rank rank:Rank.values()){
                StudentRank srank = rank.selectRand();
                System.out.print(srank+"; ");
            }
        }
        System.out.println();
        for(int i=0;i<10;i++){
            for(Rank2 rank:Rank2.values()){
                qian.com.Rank2.StudentRank srank = rank.selectRand();
                System.out.print(srank+"; ");
            }
        }
    }

}

运行结果:
这里写图片描述

樽海鞘优化算法详解:原理、实现与应用 本文详细介绍了樽海鞘优化算法(SSA)的原理、实现与应用。该算法模拟樽海鞘链式群体行为,将优化问题解空间映射为群体移动空间,通过领导者引导和追随者跟随的协作机制寻找最优解。文章从生物特性、数学模型到Python代码实现进行了系统阐述,包括种群初始化、位置更新公式和收敛因子等核心要素,并展示了算法在函数优化等领域的应用潜力。该算法具有结构简单、参数少、实现容易等特点,在多种优化问题上表现良好。 阅读详情

相关推荐

基于51单片机的通讯聊天系统

通过编写51单片机通讯聊天程序,掌握51单片机的各个模块的知识点和运用C语言编写51单片机的能力。用51单片机与口袋开发板设计实现一个单片机与电脑串口助手实现通讯功能的程序。程序的主要功能如下: 1 OLED初始化显示Welcome to Bluetooth communication! 字符串。 2 程序开始时处于接收信息模式, 电脑串口助手发送信息时,将从初始化字符第一个开始显示,电脑串口助手发送信息后,蜂鸣器响铃2秒左右。 3 每次同时按下左右键时,可以轮流切换接收/发送信息模式 4 在发送信息模式时

m0_47419053的博客 3637

力扣每日一题2022-02-10中等题:最简分数

最简分数题目描述思路数学Java实现Python实现 题目描述 最简分数 思路 数学 要保证分数在(0, 1)范围内,可以枚举分母∈[2, n]和分子∈[1, 分母),若分子和分母的最大公约数为1,则为最简分数。 Java实现 class Solution { public List<String> simplifiedFractions(int n) { List<String> ans = new ArrayList<>();

wcy1034036507的博客 494

pytorch多层感知机实现假钞识别(完整项目构建)

目录1 项目构建2 超参数设置 config.py3 数据集预处理 preprocess.py4 数据集类构建 dataset_banknote.py5 模型构建 model.py6 训练trainer.py6.1 查看损失曲线7 在测试集上运行 inference.py 1 项目构建 构建项目文件夹Banknote,以及子文件夹与py文件。 名称 作用 data目录 存放原始数据与预处理后切分为训练集、验证机、测试集的数据 log目录 存放训练过程中保存的指标,如损失、精确度等

Demon_LMMan的博客 2026

JAVA vs C#.net

一直在用C#开发,不过最近接了个JAVA的项目,而且还是黑莓(blackberry)手机上面J2ME项目,时间紧迫,匆忙中就开始写代码了,况且大师说JAVA和C#几乎一样。现在开发完了,才发现JAVA有很多不足之处。也许JAVA程序员没有意识到。不过如果你是长期在C#上开发东西的话,JAVA真的很不方便。1.Java没有Property属性,C#其实是用它来包装成员变量,省去了getMyMem

607

Type-C转DP1.4转C双向互传转接线方案

Type-C转DP双向互转方案的核心在于利用Type-C接口中的Alt Mode(交替模式)功能。通过利用Type-C接口的Alt Mode功能,该方案实现了Type-C接口与DP接口之间的双向互传,极大地丰富了用户的视觉体验。在选择Type-C转DP双向互转方案时,用户需要关注兼容性、性能需求、线缆长度和品牌等因素,以确保获得最佳的传输质量和使用体验。因此,Type-C转DP双向互转方案应运而生,旨在实现Type-C接口与DP接口之间的无缝连接,满足用户对高效能和高清晰度视频传输的需求。

m0_70875024的博客 4974

从报错到定位:Memtest86 DQ位算法解析与实践指南

本文深入解析了Memtest86内存测试工具报错信息的解读方法,重点介绍了通过地址解析、数据转换、位比对和DQ定位四步算法,精准锁定故障DQ位的实践流程。文章以DDR4和DDR5为例,详细拆解了从十六进制报错到二进制比对的完整步骤,并提供了从单个报错分析到故障模式诊断的进阶指南,帮助用户将抽象的报错信息转化为具体的维修或排查依据。

sre5engineer的博客 486

java发展史

Java是由Sun Microsystems公司(简称Sun公司)于1995 年 5 月推出的 Java程序设计语言和Java平台的总称。Java语言是一种可以撰写跨平台应用软件的面向对象的程序设计语言,由当时任职太阳微系统的 詹姆斯 · 高斯林 (James Gosling)等人于1990年代初开发,它最初被命名为Oak(橡树)。 Java伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。 1991年4月,由James Gosling博士领导的绿色计划(Green...

weixin_39412946的博客 5835

Jetson Orin NX 单目标跟踪算法实战

本文对比了NanoTrack和MixFormerV2两种目标跟踪算法在Jetson Orin NX边缘设备上的实际表现。通过天空小目标跟踪场景测试发现,NanoTrack虽然表征能力较弱,但具有目标身份一致性强、失败模式可控、计算负担小等优势,更适合作为边缘端默认算法。MixFormerV2则适用于高速运动等特定场景。实验数据显示NanoTrack在Orin NX上可达200FPS,远高于MixFormerV2的38-120FPS。建议先采用NanoTrack构建稳定系统,后续再评估复杂算法的适用性。

karmueo46的博客 624

从初学者到专家:Java枚举的完整指南

枚举是一种特殊的数据类型,用于表示一组有限的命名常量。它的优点包括类型安全性、可读性、可维护性和易于扩展,同时还简化了单例模式的实现。枚举常量是唯一的、不可变的,可以在编译时进行检查,减少错误的发生。枚举类型可以具有自定义的方法,提供了一种组织常量和相关行为的方式。枚举还可以支持可迭代和比较操作,方便进行遍历和比较枚举常量。

LHY537200的博客 5342

远程桌面连接失败?手把手教你解决CredSSP加密Oracle漏洞(Win10/Win11通用)

本文详细解析了Windows远程桌面连接因CredSSP加密Oracle漏洞安全更新导致的“身份验证错误”问题。文章从原理入手,提供了通过组策略编辑器(适用于专业版)和注册表编辑器(适用于家庭版)两种核心解决方案,指导用户将安全策略调整为推荐的“缓解”模式,以在保障安全的前提下恢复连接,并给出了高级脚本处理与安全最佳实践。

u6v7w8x的博客 724

通过CN3口直接控制台达伺服电机A2-M(二)

既然可以通过RS485与伺服驱动器进行通讯,那么就肯定可以控制转速 首先,需要了解下 ‘控制模式及控制命令输入源设定’ 依据以上资料,速度控制模式有两种,S和SZ模式,分别对应模式选择中的02和04,对P1-01的地址0102进行写地址操作即可实现,一开始我使用了S模式,但是这个模式在寸动模式下会自动运转,不符合我控制的要求,后面改用SZ模式,就可以实现零速度。 使用串口工具发送命令:“01 06 01 02 00 04 28 35”即可以实现设置,设置完成后可以手动在伺服驱动器的按键面板上进行确

HKing_evil的博客 6825

Java枚举类:初学者的入门指南与面试技巧

枚举类是Java中一个非常实用的特性,它不仅可以定义一组固定的常量,还可以携带额外的信息和行为。通过使用枚举类,我们可以提高代码的可读性、类型安全性和灵活性。在面试中,理解枚举类的基本概念、类型安全、方法和字段、接口实现以及与switch语句的配合使用是非常重要的。希望本文的讲解能够帮助你更好地理解和使用枚举类,并在面试中取得好成绩。

shaozheng0503的博客 593

cesium 综合教程200+【目录】(已包含186篇文章)

cesium示例教程100+旨在为开发者提供简单快捷的,。在每一个示例中,解释相应的API知识点,做到。目录中有链接的为已有文章,没链接的为目标文章,不断更新中…

大剑师兰特的GIS世界 8889

java实体类中有枚举类型_Java初学——枚举和实体类

一、枚举1.枚举的含义枚举是由一组固定的常量组成的类型,枚举的类型关键字是enum2.枚举的使用定义枚举类packageenumtdome;//用enum关键字创建public enumGender {//枚举类中直接放值 不需要数据类型one,two,three,four,five,six,seven}枚举的运用packageenumtdome;importjava.util.Scanner;p...

weixin_28942523的博客 3409

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

Java枚举从零入门:小白也能懂的枚举详解

作为一个刚接触Java不久的新手,我发现枚举在项目中经常出现,但一开始确实有点摸不着头脑。经过一段时间的学习和实践,现在终于搞明白了它的基本用法,这里记录下我的学习心得。对于想快速上手Java枚举的同学,建议可以先在纸上画出枚举的结构,然后在平台上实际编写代码运行看看。枚举是Java中一种特殊的类,用来表示一组固定的常量。3) 尝试在枚举中添加一个抽象方法,让每个枚举常量实现不同的行为。枚举常量是单例的,所以可以用==比较,推荐使用==。枚举不能用new实例化,应该直接使用枚举常量。在学习过程中,我发现。

SnowflakeJaguar14的博客 884

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Java 枚举:理解枚举本质

Java 语言中定义枚举也是使用关键字 enum public enum Color { RED, GREEN, BLUE, YELLOW; } 上述定义了一个枚举类型 Color(可以说是类,编译之后是 Color.class). 上面的定义,还可以改成下面的这种形式 public enum Color { RED(), GREEN(), BLUE(), YELLOW();...

【小石头的茅坑】 71万+

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

Java枚举类,你真的了解吗?

引言 文章相关代码已收录至我的github,欢迎star:lsylulu/myarticle 枚举类可能在初学者的知识储备中比较陌生,但实际开发中,枚举类又不可或缺。枚举类能够统一管理一些全局的变量,封装对于他们的逻辑与方法。还能和switch-case结合,简化大量的if-else,让代码更加优雅。 本文将从以下几个角度介绍枚举类: 枚举类的作用 枚举类基本性质 枚举类基本方法 含有抽...

luluyo的博客 6516

java 枚举值赋值_Java枚举的几种操作方法

Jdk 1.5后来了个哥们叫 enum 平时也用着,但也未做个总结啥地,今儿个同事问我如何用,就整理了下。枚举其实就是一种类型,跟int, char 这种差不多,就是定义变量时限制输入的,你只能够赋enum里面规定的值。定义枚举 方法很简单,就跟定义一个类一样,只是把class换成 enum,其他的,你懂地。e.g:public enum WorkDay{Monday,Tuesday,Wednes...

weixin_31026805的博客 7979

Java初学——枚举和实体类

一、枚举   1.枚举的含义     枚举是由一组固定的常量组成的类型,枚举的类型关键字是enum   2.枚举的使用     定义枚举类 package enumtdome; public enum Gender { one,two,three,four,five,six,seven }     枚举的运用 package enumtdome; ...

weixin_34097242的博客 775

初学Java之理论篇_数组与枚举

数组与枚举数组 数组 1.数组属于引用型变量,数组变量中存放着数组的首元素的地址,通过数组变量的名字 加索引使用数组的元素。 2.数据类型 数组名=new 数据类型(数组元素的个数) 例如:float boy = new float[4] 3.java采用“数组的数组”来声明多维数组,一个二维数组是由若干个一维数组组成的。 例如:int a[][] = new int[3][]; 该二维数组a就...

万事胜意 408

java初学之枚举类

java初学之枚举类 enum的使用 enum text{ 1、提供当前枚举类的对象,多个对象用“,”隔开末尾用“;”结束。 A1("A","AA"), B1("B","BB"); 2、声明对象属性。 private final String name; private final String nameq; 3、私有化构造器。 private text(String name,String nameq){ this.name=

Ggdhfgt的博客 244

java枚举 取值_秒懂系列,超详细Java枚举教程!!!

深入理解Java枚举一、什么是枚举1.1 什么是枚举?至于枚举,我们先拿生活中的枚举来入手,然后再引申Java中的枚举,其实它们的意义很相似。谈到生活中的枚举,假如我们在玩掷骰子的游戏,在我们手中有两个骰子,要求掷出两个骰子的点数和必须大于6的概率,那么在此情此景,我们就需要使用枚举法一一列举出骰子点数的所有可能,然后根据列举出来的可能,求出概率。可能有的小伙伴发现,这就是数学啊?这就是数学中的概...

weixin_39600319的博客 5077

【08章Java枚举类】简单易懂enum

【08章Java枚举类:enum作为一个全新定义的类型,是希望能够帮助程序员写出的代码更加简单易懂】

小鳴人的博客 2179

Java枚举类全网最易懂讲解

今天有个同学说他没怎么用过枚举类让我给他讲解一下,他说看了这么多博客还是一团雾水。然后我搜了一下,发现都是写的啥呀!我来,如果这篇博客你还听不懂请狂喷我,暴躁老哥立马上线写下此版本,废话少说,下面开始介绍。

Cheney的博客 1466

Java初学笔记14-【枚举、自定义枚举、注解、重载、增强for循环】

Java初学笔记141.2.3.4.5.6.7.8.9.10. 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 部分图片来自B站韩顺平老师

爱吃凉拌辣芒果的博客 228

枚举类的意义_深入理解Java枚举

所有知识体系文章,[GitHub](https://github.com/Ziphtracks/JavaLearningmanual)已收录,欢迎Star!再次感谢,愿你早日进入大厂!https://github.com/Ziphtracks/JavaLearningmanual​github.com一、什么是枚举1.1 什么是枚举?至于枚举,我们先拿生活中的枚举来入手,然后再引申Java中的枚举...

weixin_39613540的博客 1429
上一篇: java枚举:初学(1)
下一篇: java数据结构:排序算法(1)
Coder-Qian
博客等级 码龄11年 63粉丝 73原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值