标题:关于 enum 的问题
只看楼主
听阳光洒下
Rank: 1
等 级:新手上路
帖 子:51
专家分:0
注 册:2013-11-10
结帖率:90.91%
已结贴  问题点数:15 回复次数:9 
关于 enum 的问题
public enum ITSIssueType {

  Terminology, Mistranslation, Omission, Untranslated, Addition, Duplication, Inconsistency, Grammar,
  Legal, Register, LocaleSpecificContent("locale-specific-content"), LocaleViolation("locale-violation"),
  Style, Characters, Misspelling, Typographical, Formatting, InconsistentEntities("inconsistent-entities"),
  Numbers, Markup, PatternProblem("pattern-problem"), Whitespace, Internationalization, Length,
  NonConformance("non-conformance"), Uncategorized, Other;

  public static ITSIssueType getIssueType(String name) {
    for (ITSIssueType issueType : values()) {
      if (issueType.toString().equals(name)) {
        return issueType;
      }
    }
    throw new IllegalArgumentException("No IssueType found for name '" + name + "'. Valid values: " + Arrays.toString(values()));
  }

  private final String name;

  ITSIssueType() {
    this.name = name();
  }

  ITSIssueType(String name) {
    this.name = name;
  }

  
  @Override
  public String toString() {
    return name.toLowerCase();
  }

}
我想问的是我加粗那段,枚举类型不应该是定义静态常量的吗?是常量的话就应该都是大写字母才对啊,可是这里却是只有首字母大写,我不明白,求哪位高人知道的指点下!
搜索更多相关主题的帖子: public Style 
2014-07-16 20:48
love云彩
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:青藏高原
等 级:贵宾
威 望:53
帖 子:3663
专家分:11416
注 册:2012-11-17
得分:0 
标记符的命名你懂不?在java里面,常量的命名一般都是首字母大写,其他小写。
比如int Year;
如果连续两个单词的话也是如此。

声明一个函数名的话,一般都是首字母小写,下一个单词的首字母大写,
比如,public String getSizeOf(int a,int b)

思考赐予新生,时间在于定义
2014-07-16 21:03
听阳光洒下
Rank: 1
等 级:新手上路
帖 子:51
专家分:0
注 册:2013-11-10
得分:0 
回复 2 楼 love 云彩
不对啊,我看到的常量都全是大写字母,没有大小写字母一起的啊
2014-07-16 21:20
love云彩
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:青藏高原
等 级:贵宾
威 望:53
帖 子:3663
专家分:11416
注 册:2012-11-17
得分:15 
如果是系统已经定义好了的常量,一般全都是大写的,如果是用户自定义的常量,一般都遵循我所说的那种规则的

思考赐予新生,时间在于定义
2014-07-16 21:50
听阳光洒下
Rank: 1
等 级:新手上路
帖 子:51
专家分:0
注 册:2013-11-10
得分:0 
回复 4 楼 love 云彩
好吧,谢谢你!我想再问你一个问题
 final String msg = match.getMessage()
          .replaceAll("<suggestion>", "<b>").replaceAll("</suggestion>", "</b>")
          .replaceAll("<old>", "<b>").replaceAll("</old>", "</b>");
这种该怎么理解?
2014-07-17 17:08
love云彩
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:青藏高原
等 级:贵宾
威 望:53
帖 子:3663
专家分:11416
注 册:2012-11-17
得分:0 
以下是引用听阳光洒下在2014-7-17 17:08:22的发言:

好吧,谢谢你!我想再问你一个问题
 final String msg = match.getMessage()
          .replaceAll("<suggestion>", "<b>").replaceAll("</suggestion>", "</b>")
          .replaceAll("<old>", "<b>").replaceAll("</old>", "</b>");
这种该怎么理解?

给你看个链接,说真的,你这样代码,replaceall的参数,不是正则表达式,所以看起来不解

http://www.

思考赐予新生,时间在于定义
2014-07-17 18:48
love云彩
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:青藏高原
等 级:贵宾
威 望:53
帖 子:3663
专家分:11416
注 册:2012-11-17
得分:0 
我参考了Oracle官方API文档,replaceAll这个方法,有两个参数,
第一个参数regex,其值为正则表达式的字符串,第二个参数是要代替的字符串。


这个方法的用法是:例如:
String str="111.33.2.11"
str=str.replaceAll("(^|\\.)(\\d)(\\.|$)","$100$2$3");

在这里面,字符串str调用replaceAll,根据第一个参数的正则表达式来进行字符代换,最后返回一个
字符串变量

[ 本帖最后由 love云彩 于 2014-7-17 19:35 编辑 ]

思考赐予新生,时间在于定义
2014-07-17 18:49
love云彩
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:青藏高原
等 级:贵宾
威 望:53
帖 子:3663
专家分:11416
注 册:2012-11-17
得分:0 
replaceAll的方法我都举例跟你说了,另外附带一份java正则表达式的文档给你看看吧。
JAVA_Regex正则表达式.rar (28.49 KB)

思考赐予新生,时间在于定义
2014-07-17 19:44
听阳光洒下
Rank: 1
等 级:新手上路
帖 子:51
专家分:0
注 册:2013-11-10
得分:0 
回复 8 楼 love 云彩
谢谢你!
2014-07-19 15:28
love云彩
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:青藏高原
等 级:贵宾
威 望:53
帖 子:3663
专家分:11416
注 册:2012-11-17
得分:0 
回复 9 楼 听阳光洒下
不客气,助人为乐~~

思考赐予新生,时间在于定义
2014-07-19 15:58



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-434106-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.115150 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved