String的定义


  先前的课程多是Java语言基础的介绍和学习,侧重于基础的学习。从本章开始多注重于实际编程技能和应用的学习,是在实际编程工作中使用到的技能和重点。

Java String的定义

  Java String类在整个Java语言中占有不可或缺的地位。Java 没有内置的字符串类型,而是在标准 Java 类库中提供了一个 String 类来创建和操作字符串。在实际应用中对占用内容和运算性能有较大的影响,下面在不同的篇章中介绍java.long.String类的定义和使用。所占的篇幅也会比较多。

创建字符串

创建字符串最简单的方式如下:

String  str = "Hello,How are you.";

或者

 String  str;
str = "Hello,How are you.";

注意:字符串变量必须经过初始化才能使用。

用构造函数创建字符串:

String  str = new String("Hello,How are you.");

String 创建的字符串存储在公共池中,而 new 创建的字符串对象在堆上。

示例

String str1 = "Hello";              // String 直接创建
String str2 = "Hello";              // String 直接创建
String str3 = s1;                    // 相同引用
String str4 = new String("Hello");   // String 对象创建
String str5 = new String("Hello");   // String 对象创建

  上面的代码str1,str2,str3都是指向公共池中的Hello字符串,而str4和str5分别创建了不同的字符串对象,占用了不同的内容空间。

String(String original)

  初始化一个新创建的 String 对象,使其表示一个与参数相同的字符序列。换句话说,新创建的字符串是该参数字符串的副本。例如:

String str1 = new String("Hello Java");
String str2 = new String(str1);

这里 str1 和 str2 的值是相等的。

String(char[ ]value)

  分配一个新的字符串,将参数中的字符数组元素全部变为字符串。该字符数组的内容已被复制,后续对字符数组的修改不会影响新创建的字符串。例如:

char a[] = {'H','e','l','l','o'};
String sChar = new String(a);
a[1] = 's';

  上述 sChar 变量的值是字符串“Hello”。 即使在创建字符串之后,对 a 数组中的第 2 个元素进行了修改,但未影响 sChar 的值。

String(char[] value,int offset,int count)

  分配一个新的 String,它包含来自该字符数组参数一个子数组的字符。offset 参数是子数组第一个字符的索引,count 参数指定子数组的长度。

char a[]={'H','e','l','l','o'};
String sChar=new String(a,1,4);
a[1]='s';

上述 sChar 变量的值是字符串“ello”。该构造方法使用字符数组中的部分连续元素来创建字符串对象。offset 参数指定起始索引值,count 指定截取元素的个数。创建字符串对象后,即使在后面修改了 a 数组中第 2 个元素的值,对 sChar 的值也没有任何影响。

  String 类有 11 种构造方法,这些方法提供不同的参数来初始化字符串,比如提供一个字符数组参数:

示例

public class StringDemo{
   public static void main(String args[]){
      char[] helloArray = { 'h', 'e', 'l', 'l', 'o'};
      String helloString = new String(helloArray);  
      System.out.println( helloString );
   }
}

执行结果:

hello
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

m0_71591178

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值