❶ java中怎么初始化对象数组
你这个试试对对象数组的一个声明,并没有示例话,所以会报空指针异常
这个数组对象都是现用现初始化的
Animals [] an=new Animals[5];//这只是个对象类型数组的声明
用的时候需要
for(int i=0;i<5;i++)
an[i]=new Animals();
这样你明白了吧
你前面的那个光声明了数组,但是没有调用Animals的构造函数,你数组里的每个元素都是一个对象,使用前必须要先实例化
如果你只是用户输入长度,
Animals [] an=new Animals[n];
声明时是可以用变量的
或者你直接Animals [] an=new Animals[100];定义一个大数组,要用的时候再new Animals();实例化,或者用LinkedList<Animals> an=new LinkedList<Animals>();定义一个动态数组
❷ Java中对象如何初始化
初始化数组有三种方式,以下都是去初始化一个String类型长度2的数组:
方式一:
123String[] strs = new String[2];strs[0] = "0";strs[1] = "1";
方式二:
1String[] strs = new String[]{"0", "1"};
方式三:
1String[] strs = {"0", "1"};
三种方式,都有自己的使用场景,在合适场景使用即可。
❸ java中string数组是怎么存储的
1. java中定义一个字符串数组方式如下,string类型和其他基本类型相似,创建数组有两种方式:
String[] str={"AAA","BBB","CCC"};
String str[]={"AAA","BBB","CCC"};
2.推荐用ArrayList<String> strArray = new ArrayList<String> (); 比较灵活。
3.也可以写为如下格式:class[] array; array = new class[number];其中前半句为声明,后半句为初始化,初始化必须要让编译器知道大小,声明的时候java是不分配内存的,只有创建的时候也就是new的时候才会分配内存。
1.数组是相同数据类型的元素的集合。
2.数组中的各元素的存储是有先后顺序的,它们在内存中按照这个先后顺序连续存放在一起。
3.数组元素用整个数组的名字和它自己在数组中的顺序位置来表示。例如,a[0]表示名字为a的数组中的第一个元素,a[1]代表数组a的第二个元素,以此类推。
4.对于VB的数组,表示数组元素时应注意:下标要紧跟在数组名后,而且用圆括号括起来(不能用其他括号)。下标可以是常量,变量,或表达式,但其值必须是整数。下标必须为一段连续的整数,其最小值成为下界,其最大值成为上界。不加说明时下界值默认为1。
❹ java String数组初始化问题
并不是出乱码了,是你把r加入进去了,r是一个String数组,无法直接转换为String
最后的那句 sb.append(r.toString()); 没有必要,删除就可以了
❺ java中怎么给字符数组初始化
java中定义一个字符串数组方式如下:
1.String[] str={"AAA","BBB","CCC"};
2.String str[]={"AAA","BBB","CCC"};
string类型和其他基本类型相似,创建数组时,有上述两种方式。
❻ 怎样在java中定义String数组
string[]
str
=
new
string[]{"aaaa","bbbb","cccc"};//直接初始化
string[]
str
=
new
string[]();//这样需要定义数组的空间
或者直接定义
string[]
str
=
null;
等你使用的时候在new
string[num]();
数组定义完了如果空间不够的话还可以扩充空间的,函数我忘了你可以在api文档查一下
❼ JAVA中一个类包含String数组怎么初始化的
不可以滴!!
因为在B中,如果没有了带*的那一行,那么仅仅只是代表 有存在一个存放A类型数组:as[i],但是里面每个元素到底存放什么我们是不知道的,在JAVA里面,就是引用为空的意思,既as[i] = null。就是说里面其实是没有任何东西的,仅仅只有一个定义而已,那怎么可以指向A类里面的a属性呢?因为as[i]指向的东西都为空,空就是代表没有任何东西,那么里面自然也不会有a这个属性咯。所以我们在声明完数组的时候,必须把数组里面的元素也申明了。但是为什么C可以呢。
你看C是这样做的:
C先声明了一个数组,所以只要存在C的实例,就可以使用到这个数组。虽然这时候,数组里面的元素是为空的,但是你在主程序里面使用了c.s[1]="3",意思就是为c实例里面的数组的第2个元素给申明了,而不是直接引用,这与B是不同的。
——————————————————————————————————————————————————————
B-->不为空,所以可以使用B里面的元素,既as数组,但是as数组里面的元素是空的,所以不存在里面有某种属性的说法,自然是不可是使用A类里面的元素a咯。
C--》不为空,所以可以使用C里面的元素s数组,然后对s数组进行操作。
祝你好运!!希望你能够理解
❽ 如何初始化java数组
Java数组初始化的两种方法:
1、静态初始化:程序员在初始化数组时为数组每个元素赋值;
2、动态初始化:数组初始化时,程序员只指定数组的长度,由系统为每个元素赋初值。
代码如下:
[java]viewplainprint?
publicclassArrayInit{
publicstaticvoidmain(String[]args){
//静态初始化数组:方法一
Stringcats[]=newString[]{
"Tom","Sam","Mimi"
};
//静态初始化数组:方法二
Stringdogs[]={"Jimmy","Gougou","Doggy"};
//动态初始化数据
Stringbooks[]=newString[2];
books[0]="ThinkinginJava";
books[1]="EffectiveJava";
System.out.println(cats.length);
System.out.println(dogs.length);
System.out.println(books.length);
}
}
❾ java怎么new字符串数组初始化
java字符串数组初始化有两种方式,一种是直接设置值的,一种是实例化后再设置值的
1、直接设置值的方法如下:
Stringname1="zhangsan";
Stringname2="lisi";
String[]names={name1,name2};
//这时的字符串数组长度为2
2、实例化后再设置值的方式如下:
String[]names=newString[2];
names[0]="zhangsan";
names[1]="lisi";
希望能帮到你,有任何疑问欢迎向我提问