连接字符串

1、连接多个字符串

使用“+”运算符可完成对多个字符串连接的功能。“+”运算符可以连接多个运算符并产生一个String对象。例如:

例在项目中创建类Join,在主方法中创建String型变量,将字符变量连接的结果输出。

publicclassJoin { //创建类

publicstaticvoidmain(String args[]) { //主方法

String s1 = new String("hello"); //声明String对象s1

String s2 = new String("word"); //声明String对象s2

String s = s1 + " " + s2; //将对象s1和s2连接后的结果,赋值给s

System.out.println(s); //将s在控制台输出

}

}

运行结果如图1所示:

图1 运行结果

技巧:Java中一句相连的字符串不能分开在两行中写,例如:

System.out.println(“I like”+“Java”)

2、连接其他数据类型

字符串也可同其他基本数据类型进行连接。如果将字符串同这些数据类型数据进行连接,会将这些数据直接转换成字符串。例如:

例在项目中创建类Link,在主方法中创建数值型变量,实现将字符串与整型、浮点型变量相连的结果输出。

publicclassLink {

publicstaticvoidmain(String args[]) { // 主方法

intbooktime = 4; // 声明的int型变量booktime

floatpractice = 2.5f; // 声明的float型变量practice

// 将字符串与整型、浮点型变量相连,并将结果输出

System.out.println("我每天花费" +booktime + "小时看书;" + practice

+ "小时上机练习,一共花费" +booktime + practice + "小时学习");

}

}

运行结果如图1所示。

图1 运行结果

本实例实现的是将字符串常量与整型变量booktime和浮点型变量practice相连后的结果输出。在这里booktime和practice都不是字符串,当它们与字符串相连时会自动将其转化成字符串形式,然后参与连接。但是最后的“一共花费42.5小时学习”的结果肯定是不对的。

意:只要“+”运算符的一个操作数是字符串,编译器就会将其它操作数转化成字符串形式,所以应小心的将其他数据类型与字符串相连,例如把与字符串相连的算数表达式用“()”括号括起来。以免得到意想不到的结果。

如果将上例中的输出语句修改为:

System.out.println("我每天花费" + booktime + "小时看书;" + practice

+ "小时上机练习,一共花费" + (booktime + practice) + "小时学习");

则实例运行结果如图2所示。

图2 运行结果

为什么会这样呢?这是由于运算符是有优先级的,圆括号的优先级最高,所以先被执行。然后再将结果与字符串相连。

3、获取字符串长度

使用String类的length()方法可获取声明的字符串对象的长度。

语法如下:

str.length();

str:为字符串对象。

例定义name和address两个字符串变量。然后将两个字符串连接并赋值给新的字符串变量message,在控制台输出3个字符串的长度。

publicclassStringLength {

publicstaticvoidmain(String[] args) {

String name = "一颗椰子树"; // 字符串1

String address = "一座孤岛上"; // 字符串2

String message = "在" + address + "有" + name; // 连接字符串

System.out.println("字符串:" + name + "\t\t长度为:" + name.length());

System.out.println("字符串:" + address + "\t\t长度为:" + address.length());

System.out.println("字符串:" + message + "\t长度为:" + message.length());

}

}

运行结果如图1所示

图1 实例运行结果

4、字符串查找

tring类提供了两种查找字符串的方法,indexOf()与lastIndexOf()方法。这两种方法都允许在字符串中搜索指定条件的字符或字符串。indexOf()方法返回的是搜索的字符或字符串首次出现的位置,lastIndexOf()方法返回的是搜索的字符或字符串最后一次出现的位置。

indexOf(String s)

该方法用于返回参数字符串s在指定字符串中首次出现的索引位置。当调用字符串的indexOf()方法时,会从当前字符串的开始位置搜索s的位置,如果没有检索到字符串s,该方法返回值是-1。

语法:

str.indexOf(substr)

str:任意字符串对象。

substr:要搜索的字符串。

例查找字符a在字符串str中的索引位置,实例代码如下:

publicclassStringIndexOf {

publicstaticvoidmain(String[] args) {

Stringstr = "We are students"; //创建一个字符串

intindex = str.indexOf("a"); //变量index的值是3

System.out.println("a在" + str + "中的位置是:" + index);

}

}

运行结果如图1所示。

图1 字符串str下标

图1 字符串str下标

理解字符串的索引位置,要对字符串的下标有所了解。在计算机中String对象是用数组表示的。字符串的下标是从0~length()-1。上例中字符串str的下标如图2所示。

图2 字符串str下标

lastIndexOf(String str)

该方法用于返回指定字符串最后一次出现的索引位置。当调用字符串的lastIndexOf()方法时。会从当前字符串的开始位置检索参数字符串str,并将最后一次出现str的索引位置返回。如果没有检索到字符串str,该方法返回-1。

语法:

str.lastIndexOf(substr)

str:任意字符串对象。

substr:要搜索的字符串。

说明:如果lastIndexOf()方法中的参数是空字符串“”,则返回的结果与调用该字符串length()方法的返回结果相同。下面的程序就可说明这个问题。

publicclassText { //创建类

publicstaticvoidmain(String args[]) { //主方法

String str = "We are students"; //定义字符串str

intsize = str.lastIndexOf(""); //将空字符串在str中的索引位置赋值给变量size

System.out.println("空字符在字符串str中的索引位置是:" + size); //将变量size输出

System.out.println("字符串str的长度是:" + str.length()); //将字符串str的长度输出

}

}

运行结果如图3所示:

图3 实例运行结果

这几天看到有些网友说我出的教程不太全,在这里说明一下,这个教程是java基础系列的我是从头开始发的,可能好多网友没看到前面的教程,还有想学的网友记得关注我,给我发私信!而且看到好多网友收藏了我的某一篇文章,你如果真感兴趣的话记得一定要关注我,因为前边好多文章我只在微信公众号这边发了,所以才导致了现在这样的情况,小编后边会慢慢的都更过来的。

Java中字符串的全部知识_java基础教程之字符串的介绍,比较重要的一个知识点「中」...相关推荐

  1. java substring截取字符串_java基础教程之字符串的介绍,比较重要的一个知识点【下】...

    字符串操作 1.获取子字符串 通过String类的substring()方法可对字符串进行截取.这些方法的共同点就是都是利用字符串的下标进行截取.应明确字符串下标是从0开始的. substring() ...

  2. java变量的类型转换基本知识_Java基础知识(一):注释、关键字、标识符、数据类型、常量、变量、数据类型转换...

    1.java中注释有三种形式 单行注释:// 多行注释:/**/ 文档注释:/**      */ 2.java中的关键词(不需要记忆) 关键词的特点:均由小写字母组成,代码编辑器会给颜色提示 3.标 ...

  3. java基本数据类型自动转包装类_Java基础教程之基本类型数据类型、包装类及自动拆装箱...

    前言 我们知道基本数据类型包括byte, short, int, long, float, double, char, boolean,对应的包装类分别是Byte, Short, Integer, L ...

  4. bigdecimal比较是否相等_java基础教程之字符串的介绍,比较重要的一个知识点【四】...

    1.判断字符串的开始与结尾 startsWith()方法与endsWith()方法分别用于判断字符串是否以指定的内容开始或结束.这两个方法的返回值都为boolean类型. startsWith()方法 ...

  5. java 监听事件和处理事件_Java基础教程之事件和监听器

    事件监听器是经常可以遇到的一种设计模式,一般用在这样一种场景下:当模块的一部分A在完成后需要通知其他的软件模块B,而等待通知的模块B在事先不需要采用轮询的方式来查看另一个模块A是否通知自己.即,当某事 ...

  6. 黑马程序员全套Java教程_Java基础教程_异常(含扩展)(二十三)

    黑马程序员全套Java教程_Java基础教程_异常(含扩展)(二十三) 1.1 异常概述与异常体系结构 1.2 JVM遇到异常时的默认处理方案 1.3 异常处理 1.4 异常处理之try--catch ...

  7. c 语言 字符 r,R语言基础教程之字符串

    原标题:R语言基础教程之字符串 在R中的单引号或双引号中写入的任何值都将被视为字符串.在R内部将每个字符串存储在双引号内,即使您使用单引号创建它们. 适用于字符串构造的规则 字符串开头和结尾的引号应为 ...

  8. java循环基础知识_Java基础知识·循环语句

    掘友们,大家好呀,我是宸道. 今天要讲解的是Java基础的循环语句,虽然很基础但还是希望大家看完,就当时复习知识了,基础越牢固越好,对我们是有很大帮助的. 相关推荐 循环语句可以在满足循环条件的情况下 ...

  9. java的实现基础知识_Java基础知识

    1 面向对象和面向过程的区别 面向过程: 优点:性能高.直接编译. 适用:单片机.嵌入式开发.Linux/Unix 面向对象: 特点:封装.继承.多态 优点:易维护.易复用.易扩展.可移植(数据类型. ...

  10. java语言用数组接收字符_Java基础——数组应用之字符串String类

    字符串String的使用 Java字符串就是Unicode字符序列,例如串"Java"就是4个Unicode字符J,a,v,a组成的. Java中没有内置的字符串类型,而是在标准J ...

最新文章

  1. HTML自学教程--一天搞定HTML(总结)
  2. 请使用日期时间相关的API,计算出一个人已经出生了多少天
  3. pyemd资料学习 2019.1.24 https://media.readthedocs.org/pdf/pyemd/latest/pyemd.pdf
  4. 做一个幸福的“生活家”:谈《心欢喜,灵快乐》
  5. Python 编码规范 PEP 8
  6. 快来参加学习.NET 挑战赛
  7. 关于显示和隐藏DIV标签
  8. java 判断ip和port是否存活_java判断IP和端口号是否可以访问
  9. envi栅格TIF数据进行分割_栅格数据镶嵌
  10. 项目过程总结 和某个字段的更新
  11. 网易云ncm转mp3
  12. [RTOS]uCOS、FreeRTOS、RTThread、RTX等RTOS的对比之特点
  13. 自动化测试之路 —— Appium使用教程
  14. c# 中通快递对接_C#快递鸟物流查询接口API对接调用源码
  15. cebemax hal库 stm32 OLED移植 解析
  16. GPGPU实时光线刻蚀模拟
  17. .net 2.0 下的FTP搜索引擎实现
  18. Apriori算法python实现(数据挖掘学习笔记)
  19. 移动web基础(三) 弹性盒子下
  20. hibernate MySQL 无法正确插入数据

热门文章

  1. linux串口导致死机,Linux系统死机情况分析与处理方案介绍
  2. [POI2013]LUK-Triumphal arch
  3. 第 7 章 Neutron - 069 - 理解 Neutron Server 分层模型
  4. echarts的pie图中,各区块颜色的调整
  5. Python_pip_03_安装模块出现错误时咋整
  6. iOS开发日记39-上传ERROR-90535,90529,90049
  7. [poj2449]Remmarguts' Date(spfa+A*)
  8. C#开源爬虫NCrawler源代码解读以及将其移植到python3.2(4)
  9. 发现gmail有邀请权了。有谁需要,先送5个。
  10. mysql 清理relay日志_Mysql 删除从数据库的relay logs最佳方式、最安全方式