一、Java中使用关键字new创建数组对象,格式为:数组名 = new 数组元素的类型 [数组元素的个数]示例代码:public class TestOne { public static void main(String args[]) { int[] s ;int i ;s = new int[5] ;for(i = 0 ; i < 5 ; i++) { s[i] = i ;} for(i = 4 ; ...
Java中的数组在使用new操作符创建时是否被初始化?
前面那个个人选择题答的好烂!1.C 2.D 3.C.4AB 5CD .选择题第4题A肯定错了,B我不太确定,但是觉得数组是有长度的,应该是不可能放下任意长度的东西,因为java的数组是不可变长的。第五题String必定存储笔StringBuffer快,因为String可以直接赋值,不需要new,这样的字符串是存在常量池里面的,在堆里面不开辟空间,常量池速度比堆快,所以B肯定正确。C。Stringbuffer是不可以直接赋值的,C错误;D:String是最终类,是不可变的,这也就是说有连接的方法肯定错误。
填空题:
1.正确
2.没听说过这说法,但应该是对的 。2013-10-22
这个说法是正确的。
解释:java中new的含义就是对某个对象进行初始化操作。说直白一点,就是“创建”操作。但是其实此时并没有进行对象赋值,之后必须赋值给一个对象才是有实际意义的。
如:
new A();
这个对象没有被引用,实际上是没有被引用,只不过是初始化,没有被实例化。
A a = new A();
这个是初始化对象并进行实例化为a对象,这样就可以对a进行操作了。
2015-11-05
1.C,2.D,3.B,4AB,5CD。
一、Java中使用关键字new创建数组对象,格式为:
数组名 = new 数组元素的类型 [数组元素的个数]
示例代码:
public class TestOne {
public static void main(String args[]) {
int[] s ;
int i ;
s = new int[5] ;
for(i = 0 ; i < 5 ; i++) {
s[i] = i ;
}
for(i = 4 ; i >= 0 ; i--) {
System.out.println(i+"索引值:" + s[i]) ;
}
}
}
二、初始化数组:
1.动态初始化:数组定义与为数组分配空间和赋值的操作分开进行;
2.静态初始化:在定义数字的同时就为数组元素分配空间并赋值;
3.默认初始化:数组是引用类型,它的元素相当于类的成员变量,因此数组分配空间后,每个元素也被按照成员变量的规则被隐士初始化。
示例代码:
public class TestTwo {
public static void main(String args[]) {
int a[] ;
a = new int[3] ;
a[0] = 0 ;
a[1] = 1 ;
a[2] = 2 ;
Date days[] ;
days = new Date[3] ;
days[0] = new Date(2008,4,5) ;
days[1] = new Date(2008,2,31) ;
days[2] = new Date(2008,4,4) ;
}
}
class Date {
int year,month,day ;
Date(int year ,int month ,int day) {
this.year = year ;
this.month = month ;
this.day = day ;
}
}
三、静态创建数组方式:
示例代码:
public class TestThree {
public static void main(String args[]) {
int a[] = {0,1,2} ;
Time times [] = {new Time(19,42,42),new Time(1,23,54),new Time(5,3,2)} ;
}
}
class Time {
int hour,min,sec ;
Time(int hour ,int min ,int sec) {
this.hour = hour ;
this.min = min ;
this.sec = sec ;
}
}
四、默认创建数组方式:
示例代码:
public class TestFour {
public static void main(String args[]) {
int a [] = new int [5] ;
System.out.println("" + a[3]) ;
}
}
这选择题的答案确实就是这几个答案,创建数组的方式也就这几种,难道高质量认证为了跟别人不一样,我要选择错的答案和错误的代码吗?还是有其他的数组创建方式???2015-10-16
2楼其他都对,3题错了,是求最小值。
填空题第一题对。
第二题是错的,这题是想考你多维数组怎么来的。其实就是一维数组的每一项再存入一位数组。
他不是由一维数组组合来的。错在组合二字。
关于选择题第5题,二楼也是对的。因为String对象光说存储字符串的效率是比StringBuffer高的,因为他利用了常量池(你不理解无所谓,有这么个东西)。再说D选项确实是错的String类是final的,没有连接方法。2013-10-23
比较支持第二位的答案,但还是有点不同的,楼主自己衡量一下:
第3题是求最小
第5题是bc;因为string在处理字符串时都是新开辟空间在copy的,在大数据量时,stringbuffer的优势很明显。故选b。又因为string和stringbuffer是不同的类不能这样直接赋值,但可以加个转换StringBuffer sb="(StringBuffer)这里是字符串";2013-10-23
C 2 .D 3 A 4 C 不确定 5 BC
二 1. 是的,只要执行New,就会初始化
2. 正确
2013-10-22