java字符串的基本概念

字符串是java特殊的类,使用方法像一般的基本数据类型。

声明字符串的方法:

字符串类型  字符串名字 = 字符串内容

例如 String str=“hello”;

字符串的作用:处理文本

java中处理文本主要应用类是String和StringBuffer,一般String是用来处理小的文本,StringBuffer用来处理大型文本。

字符串赋值

字符串初始化后,长度不会改变,并且内容也不变,如果要改变他的值,就会产生一个新的字符串。

例如:

String a=“你好”;

a = a +"吗"

程序会先产生a的字符串对象并在内存中申请了一段空间,此时要追加新的字符串是不可能的,因为字符串被初始化,长度是固定的,如果要改变它,只能放弃原来的空间,重新申请能够容纳"你好" 和 "吗" 2个字符串的空间,最后在将“你好吗” 字符串放到内存中。

字符串处理方法

串连接

java语言中有2中串连接方法一种是“+”,另一种是使用方法函数concat(String str)

例如

String str1="胡";

String str2="小牧";

System.out.println(str1+" "+str2);

System.out.println(str1.concat(str2));

2个输出的结果相同,

提取子字符串

方式是substring(int beginIndex,int endIndex)  或者 substring(int index)

substring(int beginIndex,int endIndex) :是提取开始位置和结束位置的字符串。

substring(int index):是提取从index指定的位置开始,一直到字符串的最后

例如

String str="nice to meet you"

//提取从字符串的第三个元素到第八个元素位置的字符串

System.out.println(str.substring(2,8)); 注意这里的字符串的顺序第一个是是从0开始数的第三个字符也就是2

//提取从字符串的第3个元素开始到结束位置的字符串

System.out.println(str.substring(2))

从字符串中分解字符

charAt(int index)

这个方法返回的是字符,而不是字符串,这是和前面的区别,参数index是指定字符串序列中字符的位置

String str=“nice to meet you”;

//获取第二个位置的字符

System.out.println(str.charAt(1))//结果是i

得到字符串的长度

length()

注意数组的长度是length,而字符串的长度是length(),数组的长度后面没有括号,得到的数组是是一个属性值,而得到字符串长度是一个方法,

测试字符串是否相等

equals(String str)

例如

String str1 = “123”;

String str2 = “123”;

if(str1.equals(str2)){

System.out.println("字符串相同")

}else{

System.out.println("字符串不相同");

}

// 忽略大小写的比较是equalsIgnoreCase(String str)

查找特定字符串

查找字符中子串有三个方法:

indexOf(子串内容) 方法是帮助查找子串,如果返回时负数,就表示在当前字符串中没有找到所查找的子串。

startsWith(子串内容)方式是测试当前字符串是否以一个子串开始

endsWith(子串内容) 方法是测试当前子串是否以子串内容为结尾

例如

String str = "大糊涂要考试了";

System.out.println(str.indexOf("小"));

System.out.println(str.startsWith("要"));

System.out.println(str.endsWith("大"));

基本类型转换成字符串

valueOf

将基本类型数据转换为相应的字符串。

String.valueOf(int i)  将int 变量转换为字符串

eg int i = 66;

String str = String.valueOf(i)// 这时候 str 就是"66"

当然想把String 转换为基本数据类型可以使用包装类也可以使用

parse××

eg :byte 可以是Byte.parseByte(String s);将s转成byte

int可以是Integer.parseInt(String s); 将s转成int

long可以是Long.parseLong(String s);将s转成long

float和double可以是Double.parseFloat(String s)和Double.parseDouble(String s)

------------------

toString()方法

在java类库中基本类中,每一个类都有toString()方法,可以将这个方法写出来,也可以直接使用对象来代替toString()方法。

String str="abc"; System.out.println(str.toString());

(这个主要是java中内含有一种机制,系统默认会在这些对象后面自动加上toString()方法)

java字符串的知识总结相关推荐

  1. java字符串相关知识

    文章目录 1 基本知识 1.1 String是否是基本类型? 1.2 创建String的方式 1.3 String.StringBuilder.StringBuffer之间的关系 2 常用工具类 2. ...

  2. java中把字符串转换为日期,java字符串转日期方法,java如何将字符串转为日期?...

    之前给大家介绍了一下java字符串转int的方法,那么下面要给大家带来的就是java字符串转日期的方法,一起来详细的了解一下. 注意,在文章当中所使用的api是SimpleDateFormat. Si ...

  3. Java SE 重点知识笔记

    文章目录 前言: 1.Java概述 1.1.Java语言跨平台原理: 1.2.JRE和JDK: 1.3.HelloWorld案例: 2.java基础语法 2.1.注释 : 2.2.类型转换: 3.数据 ...

  4. Java语言基础知识(一)

    前言 Java是一门高级计算机语言,由美国Sun公司(Stanford University Network)在1995年推出(现Sun公司已经被Oracle公司收购 ).要想学好Java,基础是至关 ...

  5. JAVA相关编译知识

    JAVA相关编译知识 总览 语言进化史 整体流程 编译器整体流程 词法分析 语法分析 语义分析 中间代码生成 目标代码生成器 代码优化 编译相关知识 编译种类 热点探测技术 编译什么 什么时候进行检测 ...

  6. Java基础语法知识你真的都会吗?

    第一阶段 JAVA基础知识 第二章 Java基础语法知识 在我们开始讲解程序之前,命名规范是我们不得不提的一个话题,虽说命名本应该是自由的,但是仍然有一定的"潜规则",通过你对命名 ...

  7. Java面试基础知识III

    Java面试基础知识: 1.C++或Java中的异常处理机制的简单原理和应用. 当JAVA 程序违反了JAVA的语义规则时,JAVA虚拟机就会将发生的错误表示为一个异常.违反语义规则包括2种情况.一种 ...

  8. 关于Java字符串的全部,就在这篇文章里了

    String 可以说是 Java 中最常见的数据类型,用来表示一串文本,它的使用频率非常高,为了小伙伴们着想,我怒肝了一周,把字符串能写的全都写了出来. 来看一下脑图吧,感受一下这份手册涉及到的知识点 ...

  9. Java SE 基础知识

    Java SE 基础知识 1 2 @(Notes)[J2SE, Notes] VICTORY LOVES PREPARATION. 特别说明: 该文档在马克飞象查阅最佳: 本部分知识还在迭代中,欢迎补 ...

最新文章

  1. BZOJ-1864-[Zjoi2006]三色二叉树(树形dp)
  2. python 的 str bytes 区别
  3. frome here on out
  4. java 静态 二维数组 转化hashmap_将一个二维数组转换为 hashmap 哈希表
  5. Redis的几个认识误区
  6. uboot kernel 博客
  7. Git Flow分支管理
  8. ipad如何与计算机连接网络连接不上,平板电脑网络连接不上怎么办
  9. 将文件复制到FTP服务器时发生错误的解决办法
  10. 开涛传–记京东“首席”架构师张开涛
  11. Java SE、OpenJDK、Java EE、Java 框架、Java ME 等概念之间的区别
  12. 图像处理的alpha通道(RGBA图像)
  13. 那个能打的百度,回来了
  14. 通过QQ音乐接口获取数据+播放源
  15. GO语言————2、GO语言环境安装
  16. 玩转curl指令—测试简单的HTTP接口
  17. 饮水思源--浅析深度学习框架设计中的关键技术
  18. Haskell函数式编程学习笔记
  19. 太阳能发电机的优缺点是什么?
  20. Raphael.js简易教程

热门文章

  1. Go 学习笔记(78)— Go 标准库 net/http 创建服务端(接收 GET、POST 请求)
  2. SpringBoot2.x 不反回空值属性
  3. 运动是性价比最高的投资
  4. 【spring】编程式事务控制
  5. 面试常碰到++p/p--问题到底结果是什么?
  6. OP_REQUIRES failed at conv_ops.cc:386 : Resource exhausted: OOM when allocating tensor with shape..
  7. LeetCode简单题之只出现一次的数字
  8. 模拟内存计算如何解决边缘人工智能推理的功耗挑战
  9. 汽车车灯灯具系统(上)
  10. 目标检测coco数据集点滴介绍