在 Java 中,将变量直接分配给包装器 class 是一个好习惯吗?
Is assigning variables directly to a wrapper class a good practice in Java?
随着我慢慢地学习 java 教程,我遇到了 java 帮助程序 classes。代码是
public static void main(String args[]) {
char myLittleChar = 'b';
char myBigChar = Character.toUpperCase(myLittleChar);
System.out.println(myBigChar);
然而,即使直接分配给助手 class。
Character c = 'a';
System.out.println(c.toUpperCase(c));
同样适用于空头或浮点数。
然而,我在任何教程或任何示例代码中都没有遇到过这么多,并且被声明为 int
、short
等。这被认为是一种不好的做法吗?如果是,为什么?
谢谢。
字符将原始的两字节字符包装在一个对象中。那是多余的。
你可以写
char myBigChar = Character.toUpperCase('b');
所以这是一个效率问题。
顺便说一下,String 已经是一个对象,没有这种冗长的内容。
如果我理解你的问题,你想知道实用程序 ot wrapper Object
classes 与它们的原始对应物。
wrapper 有很多优点 classes:
- 它们可以用作通用类型
- 它们可以为空
- 他们在包装的原始值和其他静态方法上提供实用方法
- 等等
在你的问题的另一面,有一个叫做装箱/拆箱的概念。
当你:Character c = 'a';
,你自动装箱原始值'a'
到它的包装Character
class。
如果您按照类似以下内容的赋值:char a = c;
,您将自动拆箱包装器的值到其原始对应物中。
随着我慢慢地学习 java 教程,我遇到了 java 帮助程序 classes。代码是
public static void main(String args[]) {
char myLittleChar = 'b';
char myBigChar = Character.toUpperCase(myLittleChar);
System.out.println(myBigChar);
然而,即使直接分配给助手 class。
Character c = 'a';
System.out.println(c.toUpperCase(c));
同样适用于空头或浮点数。
然而,我在任何教程或任何示例代码中都没有遇到过这么多,并且被声明为 int
、short
等。这被认为是一种不好的做法吗?如果是,为什么?
谢谢。
字符将原始的两字节字符包装在一个对象中。那是多余的。 你可以写
char myBigChar = Character.toUpperCase('b');
所以这是一个效率问题。
顺便说一下,String 已经是一个对象,没有这种冗长的内容。
如果我理解你的问题,你想知道实用程序 ot wrapper Object
classes 与它们的原始对应物。
wrapper 有很多优点 classes:
- 它们可以用作通用类型
- 它们可以为空
- 他们在包装的原始值和其他静态方法上提供实用方法
- 等等
在你的问题的另一面,有一个叫做装箱/拆箱的概念。
当你:Character c = 'a';
,你自动装箱原始值'a'
到它的包装Character
class。
如果您按照类似以下内容的赋值:char a = c;
,您将自动拆箱包装器的值到其原始对应物中。