Java中的数组在使用new操作符创建时是否被初始化?
明天就要考试了求大神做下面的Java题一、选择题1.下列代码的输出结果是?()publicclassTest{publicstaticvoidmain(String[]a...
明天就要考试了 求大神 做下面的Java题
一、选择题
1.下列代码的输出结果是?( )
public class Test {
public static void main(String[] args) {
int size=10;
int[] array=new int[size];
size=25;
System.out.println(array.length);
}
}
A.编译错误 B.运行错误 C.输出10 D.输出20
2.以下( )代码,能够对数组正确初始化(或者是默认初始化)。
A.int[] a; B.a = {1, 2, 3, 4, 5}; I
C.nt[] a = new int[5]{1, 2, 3, 4, 5};
D.int[] a = new int[5];
3.score是一个整数数组,有五个元素,已经正确初始化并赋值,仔细阅读下面代码,程
序运行结果是()
temp = score[0];
for (int index = 1;index < 5;index++) {
if (score[index] < temp) {
temp = score[index];
}
}
A.求最大数 B.求最小数 C.找到数组最后一个元素 D.编译出错
4.下面关于数组的说法中,错误的是( )(选择两项)
A.在类中声明一个整数数组作为成员变量,如果没有给它赋值,数值元素值为空
B.数组可以在内存空间连续存储任意一组数据
C.数组必须先声明,然后才能使用
D.数组本身是一个对象
5.下列关于字符串的描叙中错误的是()(选择两项)
A.字符串是对象
B.String对象存储字符串的效率比StringBuffer高
C.可以使用StringBuffer sb="这里是字符串"声明并初始化StringBuffer对象sb
D.String类提供了许多用来操作字符串的方法:连接,提取,查询等
二、填空题
1.Java中的数组在使用new操作符创建时是否被初始化?
2.多维数组是由一维数组组合而成,这种说法是否正确? 展开
一、选择题
1.下列代码的输出结果是?( )
public class Test {
public static void main(String[] args) {
int size=10;
int[] array=new int[size];
size=25;
System.out.println(array.length);
}
}
A.编译错误 B.运行错误 C.输出10 D.输出20
2.以下( )代码,能够对数组正确初始化(或者是默认初始化)。
A.int[] a; B.a = {1, 2, 3, 4, 5}; I
C.nt[] a = new int[5]{1, 2, 3, 4, 5};
D.int[] a = new int[5];
3.score是一个整数数组,有五个元素,已经正确初始化并赋值,仔细阅读下面代码,程
序运行结果是()
temp = score[0];
for (int index = 1;index < 5;index++) {
if (score[index] < temp) {
temp = score[index];
}
}
A.求最大数 B.求最小数 C.找到数组最后一个元素 D.编译出错
4.下面关于数组的说法中,错误的是( )(选择两项)
A.在类中声明一个整数数组作为成员变量,如果没有给它赋值,数值元素值为空
B.数组可以在内存空间连续存储任意一组数据
C.数组必须先声明,然后才能使用
D.数组本身是一个对象
5.下列关于字符串的描叙中错误的是()(选择两项)
A.字符串是对象
B.String对象存储字符串的效率比StringBuffer高
C.可以使用StringBuffer sb="这里是字符串"声明并初始化StringBuffer对象sb
D.String类提供了许多用来操作字符串的方法:连接,提取,查询等
二、填空题
1.Java中的数组在使用new操作符创建时是否被初始化?
2.多维数组是由一维数组组合而成,这种说法是否正确? 展开
6个回答
展开全部
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]) ;
}
}
这选择题的答案确实就是这几个答案,创建数组的方式也就这几种,难道高质量认证为了跟别人不一样,我要选择错的答案和错误的代码吗?还是有其他的数组创建方式???
一、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]) ;
}
}
这选择题的答案确实就是这几个答案,创建数组的方式也就这几种,难道高质量认证为了跟别人不一样,我要选择错的答案和错误的代码吗?还是有其他的数组创建方式???
展开全部
这个说法是正确的。
解释:java中new的含义就是对某个对象进行初始化操作。说直白一点,就是“创建”操作。但是其实此时并没有进行对象赋值,之后必须赋值给一个对象才是有实际意义的。
如:
new A();
这个对象没有被引用,实际上是没有被引用,只不过是初始化,没有被实例化。
A a = new A();
这个是初始化对象并进行实例化为a对象,这样就可以对a进行操作了。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
2楼其他都对,3题错了,是求最小值。
填空题第一题对。
第二题是错的,这题是想考你多维数组怎么来的。其实就是一维数组的每一项再存入一位数组。
他不是由一维数组组合来的。错在组合二字。
关于选择题第5题,二楼也是对的。因为String对象光说存储字符串的效率是比StringBuffer高的,因为他利用了常量池(你不理解无所谓,有这么个东西)。再说D选项确实是错的String类是final的,没有连接方法。
填空题第一题对。
第二题是错的,这题是想考你多维数组怎么来的。其实就是一维数组的每一项再存入一位数组。
他不是由一维数组组合来的。错在组合二字。
关于选择题第5题,二楼也是对的。因为String对象光说存储字符串的效率是比StringBuffer高的,因为他利用了常量池(你不理解无所谓,有这么个东西)。再说D选项确实是错的String类是final的,没有连接方法。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
前面那个个人选择题答的好烂!1.C 2.D 3.C.4AB 5CD .选择题第4题A肯定错了,B我不太确定,但是觉得数组是有长度的,应该是不可能放下任意长度的东西,因为java的数组是不可变长的。第五题String必定存储笔StringBuffer快,因为String可以直接赋值,不需要new,这样的字符串是存在常量池里面的,在堆里面不开辟空间,常量池速度比堆快,所以B肯定正确。C。Stringbuffer是不可以直接赋值的,C错误;D:String是最终类,是不可变的,这也就是说有连接的方法肯定错误。
填空题:
1.正确
2.没听说过这说法,但应该是对的 。
填空题:
1.正确
2.没听说过这说法,但应该是对的 。
追问
不论如何还是感谢大家的帮忙 谢谢 ~~~
追答
一不小心失误,把第3题写错了 ,我想选B来着,怎么打成C。。。。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
比较支持第二位的答案,但还是有点不同的,楼主自己衡量一下:
第3题是求最小
第5题是bc;因为string在处理字符串时都是新开辟空间在copy的,在大数据量时,stringbuffer的优势很明显。故选b。又因为string和stringbuffer是不同的类不能这样直接赋值,但可以加个转换StringBuffer sb="(StringBuffer)这里是字符串";
第3题是求最小
第5题是bc;因为string在处理字符串时都是新开辟空间在copy的,在大数据量时,stringbuffer的优势很明显。故选b。又因为string和stringbuffer是不同的类不能这样直接赋值,但可以加个转换StringBuffer sb="(StringBuffer)这里是字符串";
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询