1. java中数组分为哪几类
可变长度和不可变长度。不可变长度的是一般的数组,可以自定义声明的,这类数组初始化之前必须声明长度,例如 int [] aa = new int[20]; ,String str[] = new String[10]; ;另一种是可变长度的,这类不需要定义,是java语言提供的,也就是集合,但不全是,确切的说是集合的一部分,像ArrayList、Vector,其存储数据的方式是以数组形式存储的。建议看一下java编程的相关资料书。
2. java中数组的定义
数组的定义
语法有两种:
type arrayName[];
type[] arrayName;
type 为Java中的任意数据类型,包括基本类型和组合类型,arrayName为数组名,必须是一个合法的标识符,[ ] 指明该变量是一个数组类型变量。
/**
*数组的三种定义方法
*
*1.数组类型[]数组名=new数组类型[数组长度];
*2.数组类型[]数组名={数组0,数组1,数组2,数组3,....};
*3.数组类型[]数组名=new数组类型[]{数组0,数组1,数组2,...};
**/
publicclassWhatEver{
publicstaticvoidmain(String[]args){
//第一种例:
String[]test1=newString[6];
test1[0]="数组0";
test1[1]="数组1";
//第二种例:
String[]test2={"数组0","数组1","数组2","...."};
//第三种例:
String[]test3=newString[]{"数组0","数组1","数组2","...."};}
}
3. 在JAVA中一个数组能够存储不同类型的元素吗 送分
各位大哥大姐么。。。
当然可以啦。。。。
数组怎么怎么就不可以啦。
由于Java中的所有 对象 都 继承自 Object 对象
所以你把数组定义成 Object数组不就可以了么。
例如:
Object[] objs = new Object[5];
objs[0] = new String("str");
objs[1] = new Integer(8);
但是,你要是获取这些元素的时候一定要记住他们原来的类型。
例如:
String str = (String) objs[0];
Integer i = (Integer) objs[1];
4. java 一个数组中各元素的数据类型可以相同,也可以不同为什么是对的。请举例
java中的数组中必须存放相同的数据类型,不可以存放不同的数据类型。
Object[]数组可以存进去各种数据类型,但别忘了这些数据类型统统都被自动提升成为了Object类型。也就是说,Object[]内部放的,都是Object类型的数据。
所以说,Java中的数组,必须存放相同类型的数据
5. Java中“一个数组可以存放许多不同类型的值”。这句话是否正确如果错误,请说明理由。
错误。
数组本身定义就是用来存放相同类型的集合。
尽管Object[] objs 可以存放所有类型的Object,但是此时都是作为Object类型存入的,所以不能说是不同类型。
6. 请问在java中不同类的对象怎么创建一组数组思路是什么
定义一个不同类对象的父类,用父类创建数组,然后在数组中添加子类
7. JAVA:数组的数据类型和数组元素的数据类型可以不一样吗
不可以的,String[]型数组里面必须存放String的数据要存放不同类型的请用 不带泛型的 List、Map、Set等集合类存储方式 int和float都是数型,从int到float是可以自动转型的
8. 请问java不同类的对象怎么放在同一个数组,然后如何对这个数组进行遍历
或者说直接用List集合把你这几个数组直接用一个List表示。然后使用迭代器遍历集合
9. java如何将各种类型的数组直接打印输出
一般人都会用for循环来遍历整个数组,然后挨个输出
例如:
int[] a = {1,2,3,4,5};
要将数组a打印出来,就是
for(int i = 0;i<a.length;i++){
System.out.println(a[i]);
}
这样就会挨个输出数组
但是还有一个方法,知道的人不多,就是Array.toString(a);
只需要 System.out.println(Array.toString(a));
就会打印出[1,2,3,4,5]这种形式。
10. java怎么把两个不同类型的数组组合到一块
参考逻辑
int len1 = array1.length();
int len2 = array2.length();
// 首先,定义一个新的Object数组
Object[] fullArray = new Object[len1 + len2];
// 拷贝数据
for(int i = 0; i < len1; i++) {
fullArray[i] = array1[i];
}
for(int i = len1; i < len1+len2; i++) {
fullArray[i] = array2[i - len1];
}