一、String类的定义

  String类特点:String 代表字符串。java程序中所有的字符串文字(例如:"abc")都被实现为String类的子类

  String类特点:长度不变,一旦创建,值就不能更改(String类的数据结构是char类型的数组,并且使用了final修饰)、

二、字符串常量池

    用于存储编译期间就确定,并被保存在已编译的字节码文件中的一些数据,包括final修饰的常量,以及字符串常量。

  

三、String类常用方法

  

public class TestString {
public static void main(String[] args) {
String str="abc";//声明了一个String类型的变量,其值为"abc";
System.out.println(str);
/**String类相当于char类型的数组,数组的长度一旦创建不能更改,value的数组还使用了final进行修饰*/
/**String类的常用方法*/
System.out.println(str.charAt(0)+"\t"+str.charAt(1)+"\t"+str.charAt(2)); System.out.println(str.equalsIgnoreCase("ABc")); //忽略大小写的比较 System.out.println(str.indexOf("b")+"\t"+str.indexOf("k"));//找到返回索引,找不到返回-1 System.out.println(str.indexOf(98)+"\t"+str.indexOf('b')); //str.indexOf('b')叫自动类型转换,自动将char-->int String str2="helloworld";
System.out.println(str2.indexOf("o")+"\t"+str2.lastIndexOf("o")); //lastIndexOf反向搜索
System.out.println(str2.indexOf("o",5)+"\t"+str2.lastIndexOf("o",3)+"\t"+str2.lastIndexOf("o",7)); System.out.println("字符串字符的个数"+str2.length());
System.out.println(str2.replace('o', 'P'));
System.out.println(str2);
System.out.println(str2.startsWith("hell"));//以XXX开头 System.out.println("Io.java".endsWith(".java"));//以XXX结尾 System.out.println(str2.substring(3));//一直截取到字符串的结尾 System.out.println(str2.substring(3, 7));//含头不含尾 System.out.println(str2); System.out.println("JAVA".toLowerCase()+"\t"+"java".toUpperCase()); String str3=" hello world ";
System.out.println(str3.length()+"\t"+str3.trim().length());
System.out.println(str3);
str3=str3.trim();
System.out.println(str3); }
}

JAVA中String类以及常量池和常用方法的更多相关文章

  1. String类、常量池、字符串比较

    String类.常量池.字符串比较 一:String类           1.String类又称作不可变字符序列           2.String位于java.lang包中,Java程序默认导入 ...

  2. 在java中String类为什么要设计成final?

    大神链接:在java中String类为什么要设计成final? - 程序员 - 知乎 我进行了重新排版,并且更换了其中的一个例子,让我们更好理解. String很多实用的特性,比如说“不可变性”,是工 ...

  3. Java中String类为什么被设计为final?

    Java中String类为什么被设计为final   首先,String是引用类型,也就是每个字符串都是一个String实例.通过源码可以看到String底层维护了一个byte数组:private f ...

  4. Java中String类的方法及说明

    String : 字符串类型 一.      String sc_sub = new String(c,3,2);    //      String sb_copy = new String(sb) ...

  5. java中String类学习

    java中String类的相关操作如下: (1)初始化:例如,String s = “abc”; (2)length:返回字符串的长度. (3)charAT:字符操作,按照索引值获得字符串中的指定字符 ...

  6. 在java中String类为什么要设计成final

    在java中String类为什么要设计成final? - 胖胖的回答 - 知乎 https://www.zhihu.com/question/31345592/answer/114126087

  7. 【转载】Java中String类的方法及说明

    转载自:http://www.cnblogs.com/YSO1983/archive/2009/12/07/1618564.html String : 字符串类型 一.      String sc_ ...

  8. java中String类、StringBuilder类和StringBuffer类详解

    本位转载自http://www.cnblogs.com/dolphin0520/p/3778589.html  版权声明如下: 作者:海子 出处:http://www.cnblogs.com/dolp ...

  9. java中String类为什么不可变?

    在面试中经常遇到这样的问题:1.什么是不可变对象.不可变对象有什么好处.在什么情景下使用它,或者更具体一点,java的String类为什么要设置成不可变类型? 1.不可变对象,顾名思义就是创建后的对象 ...

随机推荐

  1. C#——发送邮件

    需要2个引用 using System.Net;using System.Net.Mail; using (MailMessage mailMessige=new MailMessage()) usi ...

  2. Django2.0——模板渲染(一)

    在前面的介绍中我们都是用简单的 django.http.HttpResponse来把内容显示到网页上,本节将讲解如何使用渲染模板的方法来显示内容,即调用精美的HTML页面.模板的创建既可以在项目下创建 ...

  3. Ubuntu编译protobuf

    个人博客地址:http://www.bearoom.xyz/2019/08/24/ubunt-protobuf/ 因为编译了tensorflow C++的版本,然后提示protobuf的版本不对应引起 ...

  4. c语言的各种技巧

    一.参考网址 1.参考网址1:C 语言的奇技淫巧 二.

  5. 产品对话 | 愿云原生不再只有Kubernete

    从2013年,云原生(Cloud Native)的概念由 Pivotal 的 MattStine 首次提出,到现在,其技术细节不断得到社区的完善.云原生逐渐演变出包括 DevOps.持续交付.微服务. ...

  6. 3)在View中添加LBUTTONDOWN(标准消息)

    1)消息一共分为四类: (1)标准消息-->以WM_  开头的都是标准消息 (2)命令消息---->  菜单  工具条  快捷键(两个按键的组合是快捷键,一个按键是 WM_KEYDOWN( ...

  7. 通过编写c语言程序,运行时实现打印另一个程序的源代码和行号

    2017年6月1日程序编写说明: 1.实现行号的打印,实现代码的读取和输出,理解主函数中的参数含义. 2.对fgets函数理解不够 3.对return(1); return 0的含义理解不够 4.未实 ...

  8. python函数中的参数(关键字参数,默认参数,位置参数,不定长参数)

    默认参数:定义函数的时候给定变量一个默认值. def num(age=1): 位置参数:调用函数的时候根据定义函数时的形参位置和实参位置进行引用. 关键字参数:如果定义的函数中含有关键字参数,调用函数 ...

  9. drf二次封装response-APIViews视图家族-视图工具集-工具视图-路由组件

    视图类传递参数给序列化类 (1).在视图类中实例化 序列化对象时,可以设置context内容. (2).在序列化类中的局部钩子.全局钩子.create.update方法中,都可以用self.conte ...

  10. v-charts使用总结(随时补充)

    柱状图.折线图.环图的常用配置(配置连接地址https://v-charts.js.org/#/line) :data 绑定基本数据 { // 第一个参数为维度(就是横轴,例如时间),剩余为指标(就是 ...