java - 在 Java 中设置 char 数组的大小

标签 java android invariants array-initialize

我正在开发 Android 应用程序。

我想像这样将大小设置为 char 数组:

public char[5] language;

但它不起作用。我必须删除数字 5 才能使其正常工作。

我想将语言变量限制为五个字符。我该怎么做?

谢谢。

最佳答案

你不能那样做。在 Java 中,数组的类型不包括它的大小。请参阅我对 this earlier question 的回答. (忽略那个问题中关于 abstract 方法的部分......这不是真正的问题。)

数组的大小由创建它的表达式决定;例如下面创建一个包含 5 个字符的 char 数组,然后用另一个包含 21 个字符的数组替换它。

public char[] language = new char[5];
...
language = new char[21];

请注意,创建是由 equals 的 RHS 上的表达式完成的。数组的长度是其“值”的一部分,而不是其“类型”。

关于java - 在 Java 中设置 char 数组的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3949572/

相关文章:

java - 如何在网页上查找某个网页元素

java防止类覆盖等于

Java:使用泛型扩展类

java - 无缘无故的错误

android - Task.isSuccessful() 为 false,无法添加任何用户

java - 在构造函数中设置变量数组的最小大小

java - 如何避免 Java ResourceBundle 字符串中的重复?

android - 更新Google play服务到8.4.0推送通知后自己显示

python - 找到该幂函数的循环不变量

validation - 不变式和验证规则有什么区别?