A. java String数组初始化问题
并不是出乱码了,是你把r加入进去了,r是一个String数组,无法直接转换为String
最后的那句 sb.append(r.toString()); 没有必要,删除就可以了
B. java关于String[] str = new String[]{};
大括号的作用是初始化。
String[]str = new String[]{};
大括号的意思是初始化,前面定义的String[]str ;
但是现在大括号里面是空的,也就是没有内容,打印str的长度是0,但是如果这样定义String[]str = new String[]{“111”,"22222"};str的长度就为2。
String类有个构造方法 String(byte ascii[],int hiByte);此方法是以字节数组的形式生成一个字符串,数组中存放字符申各字符对应的ASCII码。
为了和使用 1~3字节表示一个代码的 UTF(Unicode Text Format)兼容,这个构造方法的入口参数中用hiByte指出每个代码含几个高位字节。对于ASCII码而言,因为只有1个字节,而没有高位字节,所以,hiByte的值为0,但对其他字符,hiByte的值可能为1或2。
(2)string数组初始化java扩展阅读:
当编辑并运行一个Java程序时,需要同时涉及到这四种方面。使用文字编辑软件(例如记事本、写字板、UltraEdit等)或集成开发环境(Eclipse、MyEclipse等)在Java源文件中定义不同的类,通过调用类(这些类实现了Java API)中的方法来访问资源系统,把源文件编译生成一种二进制中间码;
存储在class文件中,然后再通过运行与操作系统平台环境相对应的Java虚拟机来运行class文件,执行编译产生的字节码,调用class文件中实现的方法来满足程序的Java API调用。
C. 如何初始化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);
}
}
D. 请问高手,java中如何初始化字符串数组,如定义: String[4] RoadName={"123,"dfdsa","eter"};为何错
String[] RoadName={"123,"dfdsa","eter"}; 应为你是一开始就初始化了数组的,随意不用指定长度
String [] RoadName=new String[4];
E. java中怎么数组初始化
一维数组
1)
int[] a; //声明,没有初始化
2)
int[] a=new int[5]; //初始化为默认值,int型为0
3)
int[] a={1,2,3,4,5};
//初始化为给定值
4)
int[] a=new int[]{1,2,3,4,5}; //同(3)
int[] a=new int[5]{1,2,3,4,5};
//错误,如果提供了数组初始化操作,则不能定义维表达式
5)
int[] a;
a=new int[5]; //正确,同(2)一样
int[] a;
a={1,2,3,4,5}; //错误数组常量只能在初始化操作中使用,如(3)
6) int a[];
a[0]=1;
//错误,因为数组没有初始化,不能赋值a[1]=2; 二维数组
1)
int[][] a;
//声明,没有初始化
2) int[][] a=new int[2][3];
//初始化为默认值,int型为0
3)
int[][] a={{1,2},{2,3},{3,4}};
//初始化为给定值
int[][] a={{1,2},{2,3},{3,4,5}};
//没有错,数组空间不是连续分配的,所以不要求每一维的大小相同
4)
int[][] a=new int[2][];
a[0]=new int[3];
//a[0]其实就是一个数组a[1]=new int[4];
//每一维的大小可以不一样
;
5)
int[][] a=new
int[][]{{1,2},{2,3},{3,4,5}};
//同(3)
F. 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数组进行操作。
祝你好运!!希望你能够理解
G. JAVA中怎么初始化对象数组
初始化数组有三种方式,以下都是去初始化一个String类型长度2的数组:
方式一:
String[]strs=newString[2];
strs[0]="0";
strs[1]="1";
方式二:
String[]strs=newString[]{"0","1"};
方式三:
String[]strs={"0","1"};
三种方式,都有自己的使用场景,在合适场景使用即可。
H. java中怎么数组初始化
成员变量,你不设值它也会初始化为null,但在方法中的局部变量就必须要初始化了
Boolean
array[]
=
{true,true};
或
Boolean
array[]
=
new
Boolean[2];
array[0]
=
true;
array[1]
=
true;
I. java怎么new字符串数组初始化
java字符串数组初始化有两种方式,一种是直接设置值的,一种是实例化后再设置值的
1、直接设置值的方法如下:
Stringname1="zhangsan";
Stringname2="lisi";
String[]names={name1,name2};
//这时的字符串数组长度为2
2、实例化后再设置值的方式如下:
String[]names=newString[2];
names[0]="zhangsan";
names[1]="lisi";
希望能帮到你,有任何疑问欢迎向我提问
J. 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>();定义一个动态数组