java中字符串数组如何赋值?

String[] a = null;
String[] b = {","};
a = b;//正确语法
a={","};//错误语法,这是为什么啊?

变量初始化,和变量赋值是两个不同的语法。
数组初始化时,可以为null,{value1,value2,value3,....},或者赋予另一个数组的值:String[] b = a;

常量只能被初始化,一次,不能再次赋值;
非常量则可以进行赋值操作,赋值操作只能赋予以下情况:null,另一个数组的值。

lz的问题中,a={","}是一个初始化的语法,不是正确的赋值语法。
温馨提示:内容为网友见解,仅供参考
第1个回答  2016-09-09
String[] a = null;
String[] b = {","};
a = b;//正确语法
b已经被赋值了,所以堆栈里有这个,a是null,没有占用堆栈的,所以找不到。
第2个回答  2016-09-09
a是null啊,null能={","}这个吗追问

那为什么a=b就可以成立那?

追答

String[]b={'',''};这个b已经被构造器构造出来了,它的数据类型又和a相同,当然可以相等,a本身没有被构造出来,就不能直接复制。通俗一点的说就相当于,把b重新取了个名字换成了a,其实a和b就是同一个东西

本回答被提问者采纳

java中字符串数组如何赋值?
数组初始化时,可以为null,{value1,value2,value3,...},或者赋予另一个数组的值:String[] b = a;常量只能被初始化,一次,不能再次赋值;非常量则可以进行赋值操作,赋值操作只能赋予以下情况:null,另一个数组的值。lz的问题中,a={","}是一个初始化的语法,不是正确的赋值语法。

java中 输入字符串怎么给String数组赋值
java中输入的字符串主要是使用scanner类来接收用户从键盘输入的数值,然后建立一个字符串数组来赋值,代码如下:public class ceshi {public static void main(String[] args){String[] s = new String[3];\/\/字符串数组Scanner sc = new Scanner(System.in);接收用户从键盘输入的字符串String str =...

如何在java中使用数组
1、首先可以使用String[] s=new String[6],定义一个长度为6的字符串数组,定义之后,可以对字符串数组进行赋值,如下图所示。2、使用int[] i=new int[6],定义一个长度为6的整型数组,其它类型类似,如下图所示。3、也可以在定义数组的时候,直接对数组进行赋值,使用String[] str=new String[...

java的中字符串数组怎么动态赋值?急求
定义一个String类型的变量:s 然后在要赋值的地方赋值:s="abc";就可以了。

java 中 String 数组怎么动态赋值
\/\/也可以创建并赋值 String[] str = {a,b,c,d,e};\/\/二维数组 String[][] str = new String[2][2]; \/\/创建一个2行2列的二维数组 str[0][0] = a0; \/\/赋值 str[0][1] = a1;str[1][0] = b0;str[1][1] = b1;\/\/也可以创建并赋值 类型名[]\/[][] 变量名 = new ...

java 中 String 数组怎么动态赋值
public class Test {public static void main(String[] args) {String[] tempone;String[] temptwo = new String[3];tempone = getArr();\/\/用另一数组直接赋值(其实是给引用地址)temptwo[0] = "X";\/\/一个一个赋值temptwo[0] = "Y";\/\/一个一个赋值temptwo[0] = "Z";\/\/一个一...

如何实现Java 字符串变量间的赋值
可以用new一个字符串,字符串本身就比较特殊,根据创建方式不同,占用的内存区域也不同。如果用String str = new String("acb");那么就会再堆内存中分配一个空间。如果按你上面那种赋值,那么当a="afdf"时候,就会栈中找值等于"dfdf"的字符串,如果找到了,就将a的引用指向它,如果没有找到就开通...

java 中 String 数组怎么动态赋值
public class StringTest {public static void main(String[] args) {\/\/方法1:知道数组有多长的前提下!String[] srr=new String[10];\/\/循环动态赋值!for (int i = 0; i < srr.length; i++) {srr[i]="第"+(i+1)+"个字符串";System.out.println(srr[i]);}System.out.println("-...

java 关于字符串数组的赋值
数组没有初始化,也没有声明长度,所以不能赋值。String[] apart =new String[3];String[] eye1=new String[3] ;这样赋值只能赋到eye1[2]=apart [2]; 结果是NULL。int类型的话是0;如何把apart[1]赋值给eye1[7]呢?至少满足下面条件 String[] apart =new String[8];String[] eye1=new...

java字符型数组怎么赋初值?
换一个类名字,如把Mul_list改成Test char a[]={'一','二','三','四','五','六','七','八','九'};你的分号是中文的分号,改成英文的就可以了

相似回答