我想在字符串变量名中包含反斜杠怎么做。
前:
String Cd_St_SSLC/PUC;
答案 0 :(得分:4)
这是一个正斜杠,在Java变量名中不合法,因为它是除法运算符。
int a = b/c;
答案 1 :(得分:4)
/
(正斜杠),因为它们是保留字符。如果您没有划分,/
将 抛出 编译时错误 ,评论(//
,/** */
或/* */
),或将其封装在字符串("//"
)中或将其视为字符文字('//'
)。运营商不能使用变量名称。
The Java™ Tutorials
变量
命名
每种编程语言都有自己的规则和约定,适用于您允许使用的各种名称,Java编程语言也不例外。命名变量的规则和约定可归纳如下:
变量名称区分大小写。变量的名称可以是任何 合法标识符 - 无限长度的Unicode字母和数字序列,以字母开头,美元符号" $",或下划线字符" "。然而,惯例是始终用一个字母开始你的变量名,而不是" $"或" "。此外,按照惯例,美元符号字符根本不会被使用。您可能会发现某些情况,其中自动生成的名称将包含美元符号,但您的变量名称应始终避免使用它。对于下划线字符存在类似的约定;虽然使用" _"开始使用变量的名称在技术上是合法的,但不鼓励这种做法。不允许有空格。
后续字符可以是字母,数字,美元符号或下划线字符。约定(和常识)也适用于此规则。为变量选择名称时,请使用完整单词而不是隐藏缩写。这样做可以使您的代码更易于阅读和理解。在许多情况下,它还会使您的代码自我记录;例如,名为cadence,speed和gear的字段比缩写版本(如s,c和g)更直观。另请注意,您选择的 名称不得为关键字或保留字 。
如果您选择的名称只包含一个单词,则以全小写字母拼写该单词。如果它由多个单词组成,则将每个后续单词的首字母大写。名称gearRatio和currentGear是此约定的主要示例。如果变量存储常量值,例如static final int NUM_GEARS = 6,则约定会略有变化,将每个字母大写并用后缀字符分隔后续单词。按照惯例,下划线字符从未在别处使用过。
标识符的Java语言规范。
The Java® Language Specification: Java SE 7 Edition
第3章词汇结构
3.8. Identifiers
标识符是Java字母和Java数字的无限长度序列,第一个必须是Java字母。
<强>标识符强>:
IdentifierChars 但不是关键字或 BooleanLiteral 或 NullLiteral
<强> IdentifierChars 强>:
JavaLetter
IdentifierChars JavaLetterOrDigit<强> JavaLetter 强>:
任何Unicode字符是一个Java 字母(见下文)
<强> JavaLetterOrDigit 强>:
任何Unicode字符是一个Java 字母或数字(见下文)
3.12. Operators
37个令牌是运算符,由ASCII字符组成。
运营商:
之一= > < ! ~ ? : == <= >= != && || ++ -- + - * / & | ^ % << >> >>> += -= *= /= &= |= ^= %= <<= >>= >>>=
以下方法Character.isUnicodeIdentifierPart
可以确定&#34;如果该字符可能是Unicode标识符的一部分&#34; 。
Method:
Java.lang.Character.isUnicodeIdentifierPart()
描述
java.lang.Character.isUnicodeIdentifierPart(char ch)
[method]确定指定的字符是否可能是Unicode标识符的一部分,而不是第一个字符。当且仅当下列陈述之一为真时,字符可能是Unicode标识符的一部分:
- 这是一封信
- 它是一个连接标点字符(例如
'_'
)- 这是一个数字
- 它是一个数字字母(例如罗马数字字符)
- 是一个组合标记
- 这是一个非间距标记
isIdentifierIgnorable
会为此字符返回true
。
答案 2 :(得分:0)
我建议你考虑Java命名约定!您可以在{&#34;来自http://java.about.com/od/javasyntax/a/nameconventions.htm中阅读更多有关此内容的信息...这是一个很好的做法,可以避免像&#39; /&#39;这样的字符,也许您可以更换它与&#39; _&#39;。
Roxana的
答案 3 :(得分:0)
我帮助您不要使用此String Cd_St_SSLC/PUC
,因为如果您希望使用有意义的名称String Cd_St_SSLC_PUC
下划线,那么它在Java变量名称中是不合法的。