如何声明一个常量数组?

时间:2022-10-29 12:43:03
就是数组的内容是不可改变的,类似于C中的const int a[] = {1,2,3}
在JAVA中写:
final int[] a = {1,2,3},只是声明了a是一个常量,但a里面的内容并不是常量,执行a[0] = 3一样可以改变数组内容,只是不能执行a = new int[4]让a指向另一个数组而已,那该如何写声明语句,让数组的内容是不可变的?

15 个解决方案

#1


以前没想过,今天看见了,一试还真是这样。。关注中,

#2


本身java语法好像没有办法指定数组的内容不可修改.
但我想是否可以通过java的List去做这样的事情。或者是自己定义一个class,把这个数组变成是private.自己去维护这个数组

#3


你的需求无法满足。
数组已经属于对象的范围,对象里面的数值是允许改变的。

#4


大牛说 话了,改变不了!

#5


还真没考虑过这个问题。。

#6


做不到,不知道打算这样做的目的是什么?

#7


还有这种问题 高 实在是高!

#8


学习了

#9


是个问题,以前没考虑过!

#10


public int getInt(int a){
return arr[a];
}
比较复杂了

#11


如果元素都不变,可能通过枚举实现更好

#12


引用 11 楼 shengli_liao 的回复:
如果元素都不变,可能通过枚举实现更好

枚举实现不了这个要求。
你还是可以让枚举变量指向定义中的其他值。

#13


引用 7 楼 jacob_0812 的回复:
还有这种问题 高 实在是高!

#14


这个问题我以前也接触过,开始的时候我也找不到问题的原因,后来我进了一个技术交

流群,这个群里的人挺多的,在里面可以沟通技术,你可以进去看一下.群号是:五九零

四九二六八。另外,这个群里可以接项目。

#15


这个问题我以前也接触过,开始的时候我也找不到问题的原因,后来我进了一个技术交

流群,这个群里的人挺多的,在里面可以沟通技术,你可以进去看一下.群号是:五九零

四九二六八。另外,这个群里可以接项目。

#1


以前没想过,今天看见了,一试还真是这样。。关注中,

#2


本身java语法好像没有办法指定数组的内容不可修改.
但我想是否可以通过java的List去做这样的事情。或者是自己定义一个class,把这个数组变成是private.自己去维护这个数组

#3


你的需求无法满足。
数组已经属于对象的范围,对象里面的数值是允许改变的。

#4


大牛说 话了,改变不了!

#5


还真没考虑过这个问题。。

#6


做不到,不知道打算这样做的目的是什么?

#7


还有这种问题 高 实在是高!

#8


学习了

#9


是个问题,以前没考虑过!

#10


public int getInt(int a){
return arr[a];
}
比较复杂了

#11


如果元素都不变,可能通过枚举实现更好

#12


引用 11 楼 shengli_liao 的回复:
如果元素都不变,可能通过枚举实现更好

枚举实现不了这个要求。
你还是可以让枚举变量指向定义中的其他值。

#13


引用 7 楼 jacob_0812 的回复:
还有这种问题 高 实在是高!

#14


这个问题我以前也接触过,开始的时候我也找不到问题的原因,后来我进了一个技术交

流群,这个群里的人挺多的,在里面可以沟通技术,你可以进去看一下.群号是:五九零

四九二六八。另外,这个群里可以接项目。

#15


这个问题我以前也接触过,开始的时候我也找不到问题的原因,后来我进了一个技术交

流群,这个群里的人挺多的,在里面可以沟通技术,你可以进去看一下.群号是:五九零

四九二六八。另外,这个群里可以接项目。