如何更改这些代码以引用类似下面的常量(使用静态int)或枚举

时间:2016-09-27 07:54:06

标签: java enums

if (requestDTO.getType() != 6 && requestDTO.getType() != 7){
}

我必须使常量变为静态或枚举,并且我想使它成为枚举。 如何在这种方法中使用枚举?

有1到7种类型,我需要一个枚举类

2 个答案:

答案 0 :(得分:1)

import {Component, NgModule} from '@angular/core'
import {BrowserModule} from '@angular/platform-browser'

import {DatePipe} from '@angular/common';

@Component({
  selector: 'my-app',
  template: `
    <div>
      <h2>Hello {{name}}</h2>
    </div>
  `,
})
export class App {
  name:string;
  constructor() {
    this.name = 'Angular2'

    let dp = new DatePipe('de-DE' /* locale .. */);
    this.name = dp.transform(new Date(), 'ddMMyyyy');
    console.log(name);
  }
}

@NgModule({
  imports: [ BrowserModule ],
  declarations: [ App ],
  bootstrap: [ App ]
})
export class AppModule {}

然后

public enum DtoType{

    TYPE1(1), TYPE2(2),... TYPE7(7)

    private final String value;

    DtoType(String value){
        this.value = value;
    }

    public String getValue() {
        return value;
    }

如果您不需要数字,则更容易

if (requestDTO.getType() != DtoType.TYPE6.getValue() && requestDTO.getType() != DtoType.TYPE7.getValue()){}

然后

public enum DtoType{

    TYPE1, TYPE2,... TYPE7

}       

答案 1 :(得分:1)

使用枚举,您可以执行类似

的操作
enum MyConstants { 
    ONE(1),
    TWO(2), 
    THREE(3), 
    FOUR(4),
    FIVE(5),
    SIX(6),
    SEVEN(7);
    private final int val;
    MyConstants(int val){ 
        this.val= val;
    }
    public int getIntValue(){
        return val;
    }
};

现在,您只需将枚举用作

if (requestDTO.getType() != MyConstants.SIX && requestDTO.getType() != MyConstants.SEVEN)

此示例假定getType返回MyConstants对象。