【摘】Enum类的toString()方法的几种不同参数

本文详细解释了Enum类中的toString方法如何使用不同参数来显示枚举类型的不同表现形式,包括G/g、X/x、D/d及F/f等参数的具体含义。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本文摘自优快云论坛的帖子

Q:问题

  Enum类的toString()方法可以跟几种不同的参数,如:  
  Enum.toString("D");  
  Enum.toString("N");  
  Enum.toString("G");  
  Enum.toString("F");  
  这里的参数"N"、"G"、"F"是什么意思?

A:回答

“G”或“g”    
  如果   value   等于某个已命名的枚举常数,则返回该常数的名称;否则返回   value   的等效十进

制数。    
  例如,假定唯一的枚举常数命名为“Red”,其值为   1。如果将   value   指定为   1,则此格式返

回“Red”。然而,如果将   value   指定为   2,则此格式返回“2”。  
   
  -   或   -  
   
  如果将   FlagsAttribute   自定义属性应用于枚举,则   value   将被视为位域,该位域包含一个

或多个由一位或多位组成的标志。  
   
  如果   value   等于已命名的枚举常数的组合,则返回用分隔符分隔的这些常数名称的列表。将在  

value   中搜索标志,从具有最大值的标志到具有最小值的标志进行搜索。对于与   value   中的位域

相对应的每个标志,常数的名称连接到用分隔符分隔的列表。则将不再考虑该标记的值,而继续搜索下一

个标志。  
   
  如果   value   不等于已命名的枚举常数的组合,则返回   value   的等效十进制数。  
     
  “X”或“x”    
   
  以十六进制形式表示   value(不带前导“0x”)。    
  “D”或“d”    
   
  以十进制形式表示   value。    
  “F”或“f”    
   
  对于“G”或“g”执行的行为是相同的,只是在   Enum   声明中不需要   FlagsAttribute。

转载于:https://www.cnblogs.com/feima-lxl/archive/2008/09/16/1292079.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值