java中的enum有啥用呢?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java中的enum有啥用呢?相关的知识,希望对你有一定的参考价值。

enum也就是枚举,像一个集合,只不过集合里面的内容都固定了.
public enum Season3
SPRING("春天"),
SUMMER("夏天"),
AUTUMN("秋天"),
WINTER("冬天");

private String name;

private Season3(String name)
this.name = name;


public double getAvgTemp()
switch(this)
case SPRING:return 10.2;
case SUMMER:return 25.8;
case AUTUMN:return 19.6;
case WINTER:return -3.6;

return 0.0;

public String getName()
return name;



public class Test
public static void main(String[] args)
m3(Season3.SPRING);


public static void m3(Season3 season)
System.out.println(season.getName()+":"+season.getAvgTemp());
Season3[] allSeason = Season3.values();//返回枚举类中所有枚举值的一个数组
System.out.println(allSeason[0]);

参考技术A Enum一般用来表示一组相同类型的常量。如性别、日期、月份、颜色等。对这些属性用常量的好处是显而易见的,不仅可以保证单例,且比较时候可以用”==”来替换equals。是一种好的习惯。例如:
性别:
public enum SexEnum
male, female;

颜色:
public enum Color
RED, BLUE,GREEN,BLACK;

本质上 male=0,female=1;同理 RED=0,BLUE=1,GREEN=2,BLACK=3;但是用这种方式表达比直接用0,1,2,3要形象和富有意义。本回答被提问者采纳
参考技术B 这个是列举的意思,比如你想要一个星期几的随机数,你可以把星期几的七天放进enum里面,这样随机出来的只有星期几,没有其他的数据。

CGRectIntegral 有啥用呢?

【中文标题】CGRectIntegral 有啥用呢?【英文标题】:CGRectIntegral what is the usage of it?CGRectIntegral 有什么用呢? 【发布时间】:2012-04-02 11:02:53 【问题描述】:

如何使用 CGRectIntegral 函数?我明白它的目的。

documentation 的具体用途尚不清楚。

【问题讨论】:

【参考方案1】:

CGRectIntegral 将任何十进制值转换为等效整数 看图可能你就明白了

我该如何解决?

frame = CGRectIntegral(frame);

-或-

myTextView.frame = CGRectIntegral(myTextView.frame);

看到这个for more information of CGRectIntegral

【讨论】:

左边的图像有点模糊,因为框架设置在像素边界上。所以原点类似于 20.5、8.5。 CGRectIntegral 将其捕捉回 20, 8。 如果您想在 iOS 模拟器中以紫色突出显示模糊图像,请选择“调试”>“颜色未对齐的图像”。这样一来,您就不必四处眯着眼睛找出哪些东西是模糊的。 补充一点很重要:CGRectIntegral 用于填充/绘制像素缓冲区。描边形状以它们的坐标为中心,因此您实际上可能需要非整数(例如 1x 屏幕上的 0.5)坐标以使它们看起来清晰。更详细的解释见这里:orangejuiceliberationfront.com/…【参考方案2】:

CGRectIntegral 方法用于创建整数 rect 。我的意思是假设如果您在应用程序中计算帧,您可能会在浮点数中获得帧值。

将浮点值设置为某些 UIElement(如 UILabel)的框架会使文本看起来模糊。为了避免这种情况,我们使用CGRectIntegral。请看下面的例子,

NSLog(@"%@",NSStringFromCGRect(   CGRectIntegral(CGRectMake(0, 15.6, 16.1, 20.2))));

这将打印,0,15,17,21。

这个解释可以在头文件中找到。

/* Expand `rect' to the smallest rect containing it with integral origin and
   size. */

【讨论】:

【参考方案3】:

一种特殊用途是修复与屏幕像素不完全对齐的帧。

看到这个问题:UITextField blurred text

如果标签或文本字段在呈现到屏幕时具有未像素对齐的框架,则文本将显得模糊。如果您使用除法计算框架(例如在父视图中居中),就会发生这种情况。

CGRectIntegral 将删除帧的小数部分,从而解决此问题。但是请注意,对于视网膜显示,0.5 帧值是像素对齐的,但 CGRectIntgral 仍会删除小数部分。

【讨论】:

以上是关于java中的enum有啥用呢?的主要内容,如果未能解决你的问题,请参考以下文章

请介绍下电脑中的环境变量,它有啥用呢?

C语言的enum中的枚举名有啥用?

java的enum到底有啥用?

JSP中站点中的WEB-INF下的web.xml文件有啥用呢?一般写啥内容的?

java中用父路径和子路径创建file对象有啥用呢

CGRectIntegral 有啥用呢?