java中string
⑴ java中string是什么
就是那个意思。
String 类代表字符串。Java 程序中的所有字符串字面值(如 "abc" )都作为此类的实例实现。
字符串是常量;它们的值在创建之后不能更改。字符串缓冲区支持可变的字符串。因为 String 对象是不可变的,所以可以共享。例如:
String str = "abc";
等效于:
char data[] = {'a', 'b', 'c'};
String str = new String(data);
⑵ java中string什么意思啊
1. 首先String不属于8种基本数据类型,String是一个对象。 因为对象的默认值是null,所以String的默认值也是null;但它又是一种特殊的对象,有其它对象没有的一些特性。
2. new String()和new String(“”)都是申明一个新的空字符串,是空串不是null;
3. String str=”kvill”; String str=new String (“kvill”);的区别: 在这里,我们不谈堆,也不谈栈,只先简单引入常量池这个简单的概念。 常量池(constant pool)指的是在编译期被确定,并被保存在已编译的.class文件中的一些数据。它包括了关于类、方法、接口等中的常量,也包括字符串常量。
⑶ Java中的String类
Java运行环境有一个类似字符串池的东东。
1.
执行语句String
str="str"时,首先查看字符串池中是否存在字符串"abc",如果存在则直接将"abc"的引用给str,如果不存在则先在字符串池中新建一个字符串"abc",然后再将其引用给给str。
2.
执行语句String
str
=
new
String(
"str");
首先在String池内找,找到?不创建String对象,否则创建,
这样就一个String对象;然后遇到new运算符号,又在内存上创建String对象,并将其返回给str,又一个对象
所以总共是2个
例:
String
s1="str";
String
s2="str";
String
s3=new
String("str");
String
s4=new
String("str");
system.out.println(s1==s2);
//
true
system.out.println(s1==s3);
//
false
system.out.println(s3==s4);
//
false
⑷ java中String是什么
Java字符串,在开发中用的是比较频繁的一个类,我们平时要表达一句话的含义,就可以使用字符串(String)来详细的描述;
Java中已经将字符串进行了很好的封装,我们可以使用String类将字符串进行随意的操作,比如字符串的反转,字符串的分割,字符串的拼接等。
Java String类提供了很多的构造方法,他可以根据我们传入的不同的参数,转换成我们想要的数据;比如可以将字符数组,字节数据,ASCII码数组转换为字符串,而且可以根据传入的参数,判断将数据的哪些位置的内容转换为字符串;
在java中除了String之外还有几个常用的字符串类StringBuffer和StringBuilder,在执行效率方面StringBuilder最快,String最慢,在Java源码中,String类里面有个常量private final char value[];用来存储字符串信息,多以对象一旦创建成功之后,内容就不会改变,但实际上修改值得时候,是不断的创建回收内容,所以String速率最慢;StringBuffer和StringBuilder都是继承于AbstractStringBuilder这个类,在这个类中有个变量char[] value;数组进行字符串内容的存储,变量是可变的,所以不用随时去分配空间,速度相对于String就会快;对于StringBuffer和StringBuffer两个类,在源码中由于StringBuffer中很多方法都被synchronized修饰,所以StringBuffer是线程安全的,也是由于这个原因,StringBuffer速度就相对于StringBuilder慢;
在我们操作比较少量的数据的时候可以使用String,如果数据在多个线程中共享,需要考虑到线程安全,可以使用StringBuffer;
以下为java中String常用的方法示例:
更多java学习方面的问题可以访问这个网页,网页链接,希望我的回答能帮到你。
⑸ java中String[][] 是什么东西string[]又是什么东西
String[][]是二维数组。例如:String[][]str=newString[4][4],这是创建了一个有4行4列元素的数组。
String[]代表一维数组。例如:String[]str=newString[4],这个创建一个有4个元素的数组。
String[]代表格式为String数组;如str[1] str[2]等。String[][]代表多维数组了.[][],可以理解为几行几列。
String是编程语言中的字符串,String类是不可变的,对String类的任何改变,都是返回一个新的String类对象。
(5)java中string扩展阅读:
String的主要功能:
String 类提供的成员执行以下操作:比较 String 对象;返回 String 对象内字符或字符串的索引;复制 String 对象的值;分隔字符串或组合字符串;修改字符串的值;将数字、日期和时间或枚举值的格式设置为字符串;对字符串进行规范化。
使用 Compare、CompareOrdinal、CompareTo、Equals、EndsWith 和 StartsWith 方法进行比较。
使用 IndexOf、IndexOfAny、LastIndexOf 和 LastIndexOfAny 方法可获取字符串中子字符串或 Unicode 字符的索引。
使用 Copy 和 CopyTo 可将字符串或子字符串复制到另一个字符串或 Char 类型的数组。
使用 Substring 和 Split 方法可通过原始字符串的组成部分创建一个或多个新字符串;使用 Concat 和 Join 方法可通过一个或多个子字符串创建新字符串。
使用 Insert、Replace、Remove、PadLeft、PadRight、Trim、TrimEnd 和 TrimStart 可修改字符串的全部或部分。
使用 ToLower、ToLowerInvariant、ToUpper 和 ToUpperInvariant 方法可更改字符串中 Unicode 字符的大小写。
使用 Length 属性可获取字符串中 Char 对象的数量;使用 Chars 属性可访问字符串中实际的 Char 对象。
使用 IsNormalized 方法可测试某个字符串是否已规范化为特定的范式。使用 Normalize 方法可创建规范化为特定范式的字符串。
⑹ Java中的string什么意思
string,java中的字符串。 String类是不可变的,对String类的任何改变,都是返回一个新的String类对象。 String 对象是 System.Char 对象的有序集合,用于表示字符串。String 对象的值是该有序集合的内容,并且该值是不可变的.
在编程语言中字符串都是用string来给定。
⑺ java中string是什么类型
Java 中 string 不属于基本的数据类型,只是代表一个类,是一个引用类型。String是引用类型,不过java有字符串常量池机制,声明字符串常量或者字符串常量连接都要用到字符串常量池。如果常量池中有该字符串序列则返回,所以str创建了一个字符串并放入常量池中,str2内的字符序列已在常量池中所以str2直接指向str指向的对象。
基本数据类型就只有八个,数值型:byte,short,int,long,浮点型:float,double,字符型:char,布尔型:boolean。
⑻ 在java中String的传参
这个是储存结构的问题
1,str1是个地址值,传给str的也是这个地址值,此时,str=str1=地址值,都指向常量池中的“good”
2,当执行 str="test ok"后,常量池中出现“test ok”,str改变且指向常量池中的“test ok”,此时str1仍指向常量池中的“good”,str地址值不等于str1地址值
3,你的程序并不能说明你的问题,输出结果应该是 test ok and gbc
4,简单来记:基本数据类型和String str在传参方法中改变是无效的,但String[] str、char[] ch之类是有效的
⑼ java中string怎么使用
当执行string
a="abc";时,java虚拟机会在栈中创建三个char型的值'a'、'b'和'c',然后在堆中创建一个string对象,它的值(value)是刚才在栈中创建的三个char型值组成的数组{'a','b','c'},最后这个新创建的string对象会被添加到字符串池中。如果我们接着执行string
b=new
string("abc");代码,由于"abc"已经被创建并保存于字符串池中,因此java虚拟机只会在堆中新创建一个string对象,但是它的值(value)是共享前一行代码执行时在栈中创建的三个char型值值'a'、'b'和'c'.
string
a="abc";
创建了一个对象
这个对象是在字符串池里吧
而不是堆里
所以只创建了一个对象
而string
b=new
string("abc");在字符串常量池以及
堆里都有对象所以是两个对象
string
a="abc";
在常量池中
new
string("abc");
在堆中
string
str1
=
"abc";引用的对象在栈(或者叫string池)中。
string
str1
=new
string
("abc");
引用的对象在内存/堆中。
⑽ 在java中String...是什么意思
string是编程语言中的字符串,String类是不可变的,对String类的任何改变,都是返回一个新的String类对象。 String 对象是System.Char对象的有序集合,用于表示字符串。String 对象的值是该有序集合的内容,并且该值是不可变的。
(10)java中string扩展阅读:
功能:String 类提供的成员执行以下操作:比较 String 对象;返回 String 对象内字符或字符串的索引;复制 String 对象的值;分隔字符串或组合字符串;修改字符串的值;将数字、日期和时间或枚举值的格式设置为字符串;对字符串进行规范化。
String 对象称为不可变的(只读),因为一旦创建了该对象,就不能修改该对象的值。看来似乎修改了 String 对象的方法实际上是返回一个包含修改内容的新 String 对象。如果需要修改字符串对象的实际内容,请使用 System.Text.StringBuilder 类。
字符串中的每个Unicode字符都是由 Unicode 标量值定义的,Unicode 标量值也称为 Unicode 码位或者 Unicode 字符的序号(数字)值。每个码位都是使用UTF-16编码进行编码的,编码的每个元素的数值都用一个 Char 对象表示。