------- android培训、java培训、java基础学习技术总结、期待与您交流! ----------
与字符串相关的类,有String、StringBUffer、StringBuilder。
String类。
1.创建String类型对象 String str=new String("abcdefghdef");
2.下面是String类中常见的一些方法
public class Test {
public static void main(String []args){
String str=new String("abcdefghdef");//定义一个字符串并对其进行初始化
//1.获取
int len=str.length(); //获取字符串str的长度
char ch=str.charAt(3); // 获取字符串str中位置为3的字符
int i1=str.indexOf('d'); //获取第一次出现字符d的位置
int i2=str.indexOf("def"); //获取字符串str中第一次出现字符串def的位置
int i3=str.indexOf('d', 4); //获取字符串str中从位置4开始第一次查找到d的位置
int i4=str.indexOf("def", 4); //获取字符串str中从位置4开始第一次查找到def的位置
//2.判断
boolean b1=str.contains("def"); // 判断字符串中是否包含字符串def
boolean b2=str.isEmpty(); //判断字符串是否为空
boolean b3=str.startsWith("abc"); //判断是否以指定字符串开头 //
boolean b4=str.endsWith("def"); //判断是否以指定字符串结尾
boolean b5=str.equals("abcdef"); //判断字符串与字符串是否相同
//3.转换
char[] chs=new char[]{'a','b','c','d','e'};
String str1=new String(chs);
str1=new String(chs,0,chs.length); //将指定的字符数组的一部分转换成字符串
char[] chs1=str1.toCharArray(); //将字符串转换成字符数组
byte[] by=str1.getBytes(); //将字符串转化成字节数组
//4.替换
String str2=str.replace('d', 'a'); //将字符串中字符d全部替换成a
//5.切割String[] split(regex);
//6.截取
String str3=str.substring(2,4); //将字符串str中从2到4的字符截取并付给str3
//7.转换
str.toLowerCase(); //字符串中字符大写转换为小写
str.toUpperCase(); //字符串中字符小写转换为大写
str.trim(); //去除字符串两端的空格
str.compareTo(str1); //对两个字符串按顺序进行自然比较
}
}
StringBuffer:是一个可变对象,当对他进行修改的时候不会像String那样重新建立对象
它只能通过构造函数来建立,
StringBuffer sb = new StringBuffer();
note:不能通过付值符号对他进行付值.
sb = "welcome to here!";//error
对象被建立以后,在内存中就会分配内存空间,并初始保存一个null.向StringBuffer
中付值的时候可以通过它的append方法.
sb.append("hello");
字符串连接操作中StringBuffer的效率要比String高:
String str = new String("welcome to ");
str += "here";
的处理步骤实际上是通过建立一个StringBuffer,然后调用append(),最后
再将StringBuffer toString();
这样的话String的连接操作就比StringBuffer多出了一些附加操作,当然效率上要打折扣.
这样原来的对象就没用了,就要被垃圾回收.这也是要影响性能的.
StringBuffer 和StringBuilder的区别:
java.lang.StringBuffer线程安全的可变字符序列。一个类似于 String 的字符串缓冲区,但不能修改。
StringBuilder。与该类相比,通常应该优先使用 java.lang.StringBuilder类,因为它支持所有相同的操作,但由于它不执行同步,所以速度更快。
java.lang.StringBuffer线程安全的可变字符序列。一个类似于 String 的字符串缓冲区,但不能修改。
StringBuilder。与该类相比,通常应该优先使用 java.lang.StringBuilder类,因为它支持所有相同的操作,但由于它不执行同步,所以速度更快。
相关推荐
7. **字符串处理**:详细解析String类,包括字符串的创建、操作和比较,以及StringBuilder和StringBuffer的使用。 8. **多线程**:介绍线程的概念,讲解如何创建和控制线程,以及同步机制,如synchronized关键字和...
5. **字符串**:深入学习String类的常用方法,以及如何操作字符串。 6. **异常处理**:介绍如何使用try-catch语句捕获和处理运行时错误。 7. **IO流**:教授输入输出流的使用,包括文件读写、对象序列化和反序列化等...
在本课程中,“黑马程序员”将引导我们逐步学习如何在短短两小时内编写一个基础的安卓应用程序。这是一门针对初学者的安卓编程教程,重点在于快速掌握安卓开发的基础概念和实践技能。第03天的课件源码包含了构建安卓...
- **commons-lang3**: 提供字符串和数据操作的公共方法。 - **javassist**: 字节码操作库。 #### 1.4 Struts2入门理论 **JavaEE设计模式** 对于理解Struts2的工作原理非常重要。其中,**前端控制器模式**是Struts2...
同时,Criteria API提供了一种动态构建查询的方式,无需书写字符串,更易避免SQL注入。 5. 引入懒加载和级联操作:懒加载是Hibernate优化性能的重要手段,通过延迟加载策略,只有在真正需要时才加载关联对象。级联...
5. **Scanner的其他功能**:`Scanner`不仅限于读取文本文件,还可以处理标准输入(System.in)、字符串、数值类型等。它提供了多种方法如`nextInt()`、`nextDouble()`、`nextBoolean()`等,方便地读取不同类型的数据...
在B站黑马程序员的Python教程中,你将深入理解Python的基础概念,包括: 1. **变量与数据类型**:Python支持多种数据类型,如整型(int)、浮点型(float)、字符串(str)和布尔型(bool)。此外,还有列表(list...
在第一部分“黑马程序员_毕向东_Java基础视频教程第13天-01-String(概述).avi”中,讲解了字符串的基础知识。字符串在Java中是不可变的对象,这意味着一旦创建,就不能改变其内容。它们是通过`String`类或`...
在“黑马程序员Python视频中代码、课后习题等第二章内容”这个资源包中,我们聚焦于Python编程语言的学习,特别是第二章的核心知识点。这一章通常会涵盖基础语法和重要概念,对于初学者来说是至关重要的。下面,我们...
- `StringBuffer`:线程安全的可变字符串,适合多线程环境下的字符串操作。 - `StringBuilder`:非线程安全的可变字符串,效率高于StringBuffer。 #### 39. 集合 Java集合框架提供了丰富的数据结构,包括List、Set...
1、 编写一个函数,函数内输出一个字符串,并在主函数内调用它。 2、 编写程序计算12+22+32+....+1002的和. 3、 以下代码哪个是正确的?为什么? a. byte b = 1 + 1; b. byte b = 1; b = b + 1; c. byte b = 1;...
- `黑马程序员_毕向东_Java基础视频教程第13天-06-String(字符串练习1).avi`可能包含对上述概念的实践应用和练习题解答。 - `黑马程序员_毕向东_Java基础视频教程第13天-05-String(常见功能-比较和去除空格).avi`...
"前端学习笔记-黑马程序员JS" 本资源主要介绍了 JavaScript 的基本概念和语法,包括变量、数据类型、运算符、流程控制、数组、函数、对象、内置对象等知识点。 变量 在 JavaScript 中,变量可以在三种位置书写:...
### 黑马程序员入学Java精华总结 #### 一、Java概述与基础知识 1. **何为编程?** - 编程是指通过编写计算机能够理解的指令来解决问题或完成特定任务的过程。这些指令通常被组织成算法,并使用某种编程语言实现。...
在这个“C#黑马程序员视频简单记事本”项目中,我们看到的是一个基础教学资源,旨在教授初学者如何使用C#构建一个简单的记事本程序。虽然描述中提到这个视频可能缺失了一部分,但提供的代码可以作为补充学习材料。 ...
"【黑马面试宝典】虐面试官神器之必备黑马程序员面试宝典V2.51"是为准备面试的程序员提供的一份宝贵的资源,它涵盖了JavaSE基础、面向对象、多态以及异常处理等多个核心知识点。本文将详细解析这些内容,帮助你更好...
在本教程"字符串1306"中,我们将深入学习Java中的字符串处理,特别是通过`StringBuffer`类来实现字符串的高效修改和管理。本教程对应于Java基础视频教程的第13天,由知名教育机构黑马程序员的讲师毕向东讲解。 首先...
在Java编程语言中,字符串(String)是一个至关重要的概念,它被广泛用于数据...在观看“黑马程序员_毕向东_Java基础视频教程第13天-02-String(常见功能-获取和判断).avi”时,建议结合实例进行练习,加深理解和记忆。
在“黑马程序员Python视频中代码、课后习题等第三章内容”这个资源包中,我们聚焦于Python编程语言的学习,特别是围绕第三章的主题展开。Python作为一种高级编程语言,以其简洁明了的语法和强大的功能深受程序员喜爱...