字符串

不敢说,字符串是java程序中用的最多的对象,但是肯定的一点是,字符串是用的很多的那种,如果字符串用的不好,足以影响你代码执行的效率,来说说字符串

    写过c代码的人,都知道字符串在本质上是字符(char)类型的数组,但是在java中字符串不仅仅是一个字符数组,还是一个String类的实例对象,常见的字符串的定义有两种,一种是直接指向字符串的

  比如:String  str = “hello world”

  一种是采用最常见的对象建立的方式来定义,比如Strig str = new String(“hello world”);

  在java中可以通过“+”来进行字符串串联,比如String Str=“hello”+“world”;“+”本来是一个加法运算符,但是在这里它被重写了,作为连接符;

  刚才说过,字符串是以String的一个实例存在的,所以每个字符串对象本身就拥有几个可以操作的方法

 

length()获得字符串的字符长度,注意在这里是方法名称,而不是属性length
equals()比较两个对象的内容
toLowerCase()字符串改为小写
toUpperCase()字符串改为大写

  来看代码

 

public  class StrDemo1{
  public static void main(String[] args){
    String str = "hello world";
	System.out.println("转换为小写"+str.toLowerCase());
	System.out.println("转换为大写"+str.toUpperCase());
	System.out.println("字符串的长度"+str.length());
	
  }

}

  运行结果如图1-2所示

 
   

                             图1-2 StrDemo1编译运行的结果

  代码很简单,没什么要说的,看看就好

   当然字符串和基本数据类型之间是可以相互转换的,这个比较多而且很常见的,用的时候百度就好,没啥技术含量

   由于字符串在本质上是一个字符数组,所以,它本身也有字符数组的特性

   取得字符串上的字符的的方法

 

   char charAt(int index);取得指定索引出的字符;
   int indexOf(char c);返回c第一个出现的位置的索引值
   int  indexOf(String str);返回第一个出现字符串str的索引
   int lastIndexOf(char c);返回最后一个c出现的位置索引
   String substring(int beginIndex);返回从指定索引到结束的字符串
   String subString(int beginIndex,int endIndex);返回从指定开始索引到结束索引的字符串
   char[] toCharArray();将字符串转换为字符数组
   boolean endWith(String str);判断字符串是否是已指定的字符串结尾的

    来看一段代码

 

public class StrDemo2{
   public static void main(String[] args){
       String str = "hello";
	   System.out.println("逐一取得每个索引上是字符");
	   for(int i=0;i<str.length();i++){
	      System.out.println(str.charAt(i));
	   }
	   System.out.println("最后一个l的位置"+str.lastIndexOf("l"));
	   System.out.println("第一个l的位置"+str.indexOf("l"));
		System.out.println("将字符串转换为字符数组");
		char[] arr = str.toCharArray();
		for(int i=0;i<arr.length;i++){//从这里可以看出length的不同了
		    System.out.println(arr[i]);
		}
   }
}

   代码运行结果如图1-3所示

  
   

                        图1-3 StrDemo2编译运行的结果

     代码很简单,不做什么解释了,很明了的

    不可变字符串

          在java中有一个很重要的规则,就是一旦一个字符串被配置,它的内容就是固定不可改变的,其它的东西,改天继续唠……

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值