`

JAVA基础--STRING操作

 
阅读更多

String类及String类的相关操作方法,this关键字,static关键字,内部类

(1)String的两种实例化方式

public String(String origiral)///可以接收一个String类的对象,并重新实例化String对象,除了此方法之外String还可以采用直接赋值的方式进行对象的实例化。

public class StringDemo01{

public static void main(String args[]){

String str1 = "hello" ; // 使用直接赋值的方式完成

String str2 = new String("MLDN") ; // 通过构造方法完成

System.out.println(str1 + str2) ; // 进行字符串的连接操作

}

};

(2)String的比较方式

public class StringDemo02{

public static void main(String args[]){

String str1 = "hello" ; // 使用直接赋值的方式完成

String str2 = new String("hello") ; // 通过构造方法完成

String str3 = str2 ; // 通过构造方法完成

System.out.println("str1 == str2 --> " + (str1==str2)) ; // false

System.out.println("str1 == str3 --> " + (str1==str3)) ; // false

System.out.println("str2 == str3 --> " + (str2==str3)) ; // true

}

};

= =”实际上比较的是两个对象的地址是否相等,具体的是比较地址的值,因为地址是以数值的形式存在的。

但是如果需要比较字符串的内容,就需要使用String类中的equals()方法完成比较:

public boolean equals(String str)

以上程序修改为str1.equals(str2)

(3)一个字符串实际上就是String的匿名对象

一个字符串使用" "括起来,那么一个字符串常量实际上本身就属于String的一个匿名对象

(4)String的两种实例化方式的区别

String str1="hello"///表示在堆中开辟一个空间并将该空间地址赋值给栈中的str1

String str1=new String("hello")///表示先在堆中开辟一个字符串的匿名对象,然后在用new开辟一片新的空间,并将原对象值赋值给新的空间中,并将新开辟的空间地址赋值给栈内的str1,而原来的匿名对象所在空间为垃圾空间

public class StringDemo05{

public static void main(String args[]){

String str1 = "hello" ; // 使用直接赋值的方式完成

String str2 = "hello" ; // 使用直接赋值的方式完成

String str3 = "hello" ; // 使用直接赋值的方式完成

System.out.println("str1 == str2 --> " + (str1==str2)) ;

System.out.println("str2 == str3 --> " + (str2==str3)) ;

System.out.println("str1 == str3 --> " + (str1==str3)) ;

}

};

结构输出的都是true,表示的是同一个空间引用,因为对于String来讲使用直接赋值的方式会在字符串池中保存,如果之后再声明字符串的时候发现内容一样,则不会重新开辟空间,而是从内存池中取出数据继续使用。

(5)字符串的内容声明后则无法修改

public class StringDemo06{

public static void main(String args[]){

String str = "hello" ;//在堆中生成一个空间,将空间地址赋值给str

str += " world" ;//表示先开辟一个String的匿名对象,保存在新的空间中,然后将两String连接保存在另外的一个新的空间中,最后将新空间的地址值赋值给strstr原指向断开

System.out.println(str) ;

}

};

 

       
 

栈内存

   

堆内存

 

 

Hello word

 

word

 

hello

 

str

(6)String类的常用操作方法

char charAt(int index)//根据字符串中的索引找到指定位置的字符

public char[] toCharArray()//将字符串变为字符数组

public String(char[] value)//将全部的字符数组变为String类型

public String(char[] valueint offestint count )//将数组中的offest起始位置开始,长度为count的字符转换为数组

String concat(String str)//字符串的链接也可以用+号连接

(7)将字符串与字节数组

public byt[] getBytes()//将字符串变为字节数组

public String(byte[] bytes)//将字节数组全部变为字符串

public String(byte[] bytesint offset ,int length)//将字节数组的offset开始,长度为length变为字符串

(8)判断是否以指定的字符串开头或结尾

public boolean startsWith(String prefix)//判断是否指定的字符串开头

public boolean endsWith(String suffix)//判断是否以指定的字符串结尾

(9)替换操作

public String replaceAll(String regexString replacement)//将字符串中的regex采用replacement替换

(10)字符串截取

public String substring(int beginIndex)//beginIndex开始全部截取

public String substring(int beginIndexint endIndex)//beginIndex开始到endIndex进行截取

(11)字符串拆分

public String[] splitString regex//按照字符串regex拆分成字符串数组,如果两个引号见什么都不写则全部拆分

(12)字符串查找

public int indexOf(String str)//查找指定字符串的位置,如果查找不到返回-1,查找到返回0

if(str.indexOf(str2)!=-1)//返回的值不等于-1则查找到

public int indexOf(String strint fromIndex )//fromIndex开始查找str的位置

public boolean contains(String s)//查找指定的字符串,返回值我truefalse

(13)字符串的其他操作

public String trim()//去掉左右空格

public int length()//取得字符串长度

public String toUpperCase()//转换成大写

public String toLowerCase()//转换成小写

<script></script>
分享到:
评论

相关推荐

    java-API-String类

    #### 一、Java 基础概述 在Java中,`String`类是非常重要的一个类,它提供了大量的方法来处理字符串。字符串在Java中是不可变的对象,也就是说一旦创建了一个`String`对象,它的内容就不能被改变。这使得`String`...

    125集专攻JAVA基础 JAVA零基础入门学习视频教程 动力节点JAVA视频教程.txt

    北京动力节点-Java编程零基础教程-070-Java基本语法-数据类型-String类型.avi 北京动力节点-Java编程零基础教程-071-Java基本语法-运算符-算术运算基本用法.avi 北京动力节点-Java编程零基础教程-072-Java基本...

    计算机后端-Java-Java核心基础-第21章 常用类 08. String不同拼接操作的对比.avi

    计算机后端-Java-Java核心基础-第21章 常用类 08. String不同拼接操作的对比.avi

    大学课程讲义-Java基础-Java常用类

    Java基础知识中,Java常用类是非常重要的一部分,本节讲义将对String、StringBuffer、StringBuilder、Date、DateFormat、Random、Math等类进行详细的介绍。 String类 String类是Java中最基本的字符串类,它是final...

    mysql-connector-java-5.1.27

    综上所述,`mysql-connector-java-5.1.27`是Java开发者与MySQL数据库交互的基础,理解其工作原理和使用方法对于开发基于Java的数据库应用至关重要。正确地配置和使用此驱动包,可以使Java应用高效、稳定地访问和操作...

    Java自学视频教程-JavaSE基础-常用API-04、String类常用API.mp4

    Java 应用编程接口为Java应用提供了一个独立于操作系统的标准接口,可分为基本部分和扩展部分。 本视频教程帮助你从新手小白到成为精通JAVA的高手,从软件的安装,功能的介绍和使用,实战演习讲解等各大维度进行详细...

    Java自学视频教程-JavaSE基础-常用API-01、String、ArrayList课程安排.mp4

    Java 应用编程接口为Java应用提供了一个独立于操作系统的标准接口,可分为基本部分和扩展部分。 本视频教程帮助你从新手小白到成为精通JAVA的高手,从软件的安装,功能的介绍和使用,实战演习讲解等各大维度进行详细...

    Java自学视频教程-JavaSE基础-常用API-03、String类常见面试题.mp4

    Java 应用编程接口为Java应用提供了一个独立于操作系统的标准接口,可分为基本部分和扩展部分。 本视频教程帮助你从新手小白到成为精通JAVA的高手,从软件的安装,功能的介绍和使用,实战演习讲解等各大维度进行详细...

    mysql-connector-java-5.1.37-bin.zip

    总之,`mysql-connector-java-5.1.37-bin.jar` 是Java开发者与MySQL数据库交互的基础工具,它使得Java应用程序能够利用JDBC API无缝地连接和操作MySQL数据库。了解如何正确使用这个驱动,对于任何需要与MySQL数据库...

    java基础String类选择题练习题

    综上所述,这份Java基础String类选择题练习题主要覆盖了String和StringBuffer类的基础概念、基本操作方法以及它们之间的区别等内容。通过这些练习题,学习者可以更好地理解和掌握这两个类的使用方法,为实际编程工作...

    Java基础-个人总结-超详细清楚-用于面试-针对无基础或有基础回忆.docx

    Java基础是编程学习的核心部分,本总结主要涵盖了Java语言的基础概念和常见问题,适用于初学者和需要回顾基础知识的开发者。以下是对这些知识点的详细解释: 1. **基本数据类型**: - Java提供了八种基本数据类型...

    Java自学视频教程-JavaSE基础-常用API-02、String概述、对象创建的原理.mp4

    Java 应用编程接口为Java应用提供了一个独立于操作系统的标准接口,可分为基本部分和扩展部分。 本视频教程帮助你从新手小白到成为精通JAVA的高手,从软件的安装,功能的介绍和使用,实战演习讲解等各大维度进行详细...

    【IT十八掌徐培成】Java基础第09天-005.String-字符集编码.zip

    在Java基础教程中,徐培成老师的"Java基础第09天-005.String-字符集编码"主题深入探讨了这一主题,帮助初学者理解字符串(String)类与字符编码的关系。 首先,我们要知道什么是字符集。字符集是一系列用于表示文本的...

    org.dtools.javaini-v1.1.00-src.7z

    总的来说,`org.dtools.javaini-v1.1.00`为Java开发者提供了一个强大且易于使用的工具,通过源码学习,不仅可以理解其工作原理,还能为自定义扩展或优化打下基础。对于需要处理INI文件的项目,这是一个值得信赖的...

    Java自学视频教程-JavaSE基础-常用API-05、String案例:验证码、登录、隐私号码.mp4

    Java 应用编程接口为Java应用提供了一个独立于操作系统的标准接口,可分为基本部分和扩展部分。 本视频教程帮助你从新手小白到成为精通JAVA的高手,从软件的安装,功能的介绍和使用,实战演习讲解等各大维度进行详细...

    mysql驱动包-mysql-connector-java-5.1.41-bin.zip

    总的来说,`mysql-connector-java-5.1.41-bin.zip`是Java开发MySQL应用的基础,它的作用是提供一个桥梁,让Java应用程序能够通过JDBC API高效、稳定地与MySQL数据库进行数据交互。正确理解和使用这个驱动包,对于...

    java-query-string-builder:在 Java 中构建和操作 http 查询字符串

    `java-query-string-builder`库提供了一种高效且灵活的方式来构建和操作这些字符串。本篇将深入探讨如何使用Java来处理HTTP查询字符串,并介绍`java-query-string-builder`库的相关功能。 1. **HTTP查询字符串基础*...

    java mysql驱动包mysql-connector-java-5.1.9.jar

    总的来说,`mysql-connector-java-5.1.9.jar`是Java开发者连接MySQL数据库的基础,了解其工作原理和使用方式对于进行数据库操作至关重要。在实际开发中,还需要根据具体需求灵活运用,确保数据的安全性和高效性。

Global site tag (gtag.js) - Google Analytics