「java字符串赋值」java字符串赋值不了

博主:adminadmin 2023-01-13 10:42:07 56

本篇文章给大家谈谈java字符串赋值,以及java字符串赋值不了对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

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

变量初始化,和变量赋值是两个不同的语法。

数组初始化时,可以为null,{value1,value2,value3,....},或者赋予另一个数组的值:String[]

b

=

a;

常量只能被初始化,一次,不能再次赋值;

非常量则可以进行赋值操作,赋值操作只能赋予以下情况:null,另一个数组的值。

lz的问题中,a={","}是一个初始化的语法,不是正确的赋值语法。

java字符串数组赋值给字符串

你要认真看下

password

是不是

String [] password=XXXX;

也就是说要看下password是不是字符串数组对象,并且对应的字符串对象是否是空。

pass是空,只能说明password相对应的那个字符串对象为空

你只放其中一段代码,不能看出真正的问题在哪,

另外

字符串对象判断内容是否相等 ==和用equals方法是不一样,很有可能是你条件不成立

==一般是用来比较引用的内存地址,而equals 才是比较内容

if(loadid==name[q])

不成立,当然pass也是空字符串

java字符串赋值

选BC

a是正确的,定义s并复制一个字符串字面量abcd

b是错误的,\0表示字符串的结束,如果不写,默认添加上,这段是正确的,但字符串不能用单引号,必须用双引号,因此也是错误的

c是错误的,\表示转义身后的字符,\a在java中不是转义字符,\n表示换行,\t表示一个制表符,\r表示回车等

d是正确的,正确定义s,但未初始化

java中字符串赋值问题

Java运行时会维护一个String

Pool(String池,

String常量池,

字符串缓冲区)

String池用来存放运行时中产生的各种字符串,并且池中的字符串的内容不重复。

而一般对象不存在这个缓冲池,并且创建的对象仅仅存在于方法的堆栈区

String

s

=

"accp";

创建s之前系统会先在"池子"中查找是否已经存在这个字符串,

如果存在则直接符号该字符串的句柄

如果不存在,

系统会创建一个新"accp"字符串,

并返回句柄,

以后再有"accp"被要求创建,

系统不会创建新的,而是直接返回已经存在的字符串的句柄

String

s

=

new

String("accp");

系统不会去"池子"中查找,

直接在内存中新开辟一块空间,

初始化为"accp",并返回句柄

JAVA中这两种给字符串变量赋值的方法有区别吗?

有区别。new出来的对象在堆内存中。

直接赋值的字符串在 常量池区

关于java字符串赋值和java字符串赋值不了的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

The End

发布于:2023-01-13,除非注明,否则均为首码项目网原创文章,转载请注明出处。