java字符串就是Unicode字符序列,例如"Java"就是四个Unicode字符

  java没有内置的字符串类型,而是在标准Java类库中提供了一个预定义的类String。每个用双引号括起来的字符串都是String类的一个实例。

  Java允许使用符号"+"把两个字符串链接起来。

String s1="Hello";String s2="World";     String s=s1+s2;"HelloWorld"

  符号“+”把两个字符串an给定的顺序连接在一起,并且完全按照给定的形式。

  当"+"运算符两侧的操作数中只要有一个是字符串(String)类型,系统会自动将另一个操作数转换为字符串在进行连接。

int age=18;    String s="age"+age;// age18

字符串的常用类型:

char charAt(int index):返回字符串中第index个字符。

boolean equals(String other):如果字符串和other相等,就返回true

boolean equalsIgnoreCase(String other):如果字符串与other相等(忽略大小写),则返回true

int indexOf(String str)

int indexOf(String str,int fronIndx):返回与str匹配的第一个字符串开始的位置,该位置从0或fronIndx计算,如果原始串中不存在str,返回-1。

int length():返回字符串的长度

String replace(char oldChar,char newChar):返回一个新串,它是通过newChar替换此字符串中出现的所有oldChar而生成的

boolean rtartsWith(String prefis):如果字符串以prefis结尾,就返回true

String substring(int beginIndex)

String substring(int beginIndex,int endIndex):返回一个新的字符串,该串包含从原始字符串beginIndex到串尾endIndex-1的所有字符串

String toLowerCase():返回一个新的字符串中所有大写字母改写成小写字母

String toUpperCase():返回一个新的字符串,该串原始字符串中的所有小写改成大写

String trim():返回一个新的字符串,该串删除了原始字符串头部和尾部的空格

字符串相等的判断

equals方法用来检测两个字符串内容是否相等,相等返回true,否则false

内容可以是字符串变量,也可以是字符串常数。例如"Hello".equals(t)

要测试两个字符串除了大小写是否相等的,需要使用equalsIgnoreCase方法:"Hello".equalsIgnoreCase("hello")

判断字符串是否相等使用“==”

String g1="Hello World!";

String g2="Hello World!";

boolean b1=g1.equals(g2);

System.out.println("\tg1.equals(g2) 是否相等:" + (b1 ? "相等" : "不相等") );

boolean b2=(g1==g2);

System.out.println("\tg1==g2 是否相等:" + (b2 ? "相等" : "不相等") );

System.out.println("=========================================");

String  s1=new String("Hello World!");

String  s2=new String("Hello World!");

boolean b3=s1.equals(s2);

System.out.println("\ts1.equals(s2) 是否相等:" + (b3 ? "相等" : "不相等") );

boolean b4=(s1==s2);

System.out.println("\ts1==s2 是否相等:" + (b4 ? "相等" : "不相等"));

}

}

/**

*   g1.equals(g2) 是否相等:相等

*   g1==g2 是否相等:相等

*======================================

*   s1.equals(s2) 是否相等:相等

*   s1==s2 是否相等:不相等

==和equals的区别和联系

==:

  a)基本类型,比较的是值

  b)引用类型,比较的是地址

  c)不能比较没有父子关系的两个对象

equals()

  a)系统类一般已经涵盖的equals比较的是内容

  b)用户自定义类如果没有覆盖equals(),将调用父类的equals()

  c)用户自定义类需要覆盖父类的equals()

  Objest比较的==和equals都是地址

字符串(Java.lang.String类)的使用的更多相关文章

  1. java.lang.String 类的所有方法

    java.lang.String 类的所有方法 方法摘要 char charAt(int index) 返回指定索引处的 char 值. int codePointAt(int index) 返回指定 ...

  2. JDK1.8源码(三)——java.lang.String 类

    String 类也是java.lang 包下的一个类,算是日常编码中最常用的一个类了,那么本篇博客就来详细的介绍 String 类. 1.String 类的定义 public final class ...

  3. java.lang.String 类源码解读

    String类定义实现了java.io.Serializable, Comparable<String>, CharSequence 三个接口:并且为final修饰. public fin ...

  4. JDK1.8源码(三)——java.lang.String类

    一.概述 1.介绍 String是一个final类,不可被继承,代表不可变的字符序列,是一个类类型的变量.Java程序中的所有字符串字面量(如"abc")都作为此类的实例实现,&q ...

  5. Java.lang.String类

    1.String类定义   String 字符串对象本质上是一个 final 修饰的字符串数组对象, java字符串就是Unicode字符序列. 因为被final修饰, 所以字符串是常量,它们的值一旦 ...

  6. java.lang.String类compareTo()返回值解析

    一.compareTo()的返回值是int,它是先比较对应字符的大小(ASCII码顺序)1.如果字符串相等返回值02.如果第一个字符和参数的第一个字符不等,结束比较,返回他们之间的差值(ascii码值 ...

  7. 『Java』String类使用方法

    Java中的字符串 java.lang.String类表示字符串类,Java程序中所有字符串文字都可以看作实现该类的实例. 特点: 字符串不可变:字符串的值在创建后不能在发生改变 public cla ...

  8. 【Java面试题】53 能不能自己写个类,也叫java.lang.String?

    可以,但是即使你写了这个类,也没有用. 这个问题涉及到加载器的委托机制,在类加载器的结构图(在下面)中,BootStrap是顶层父类,ExtClassLoader是BootStrap类的子类,ExtC ...

  9. 能不能自己写个类,也叫java.lang.String?

    可以,但在应用的时候,需要用自己的类加载器去加载,否则,系统的类加载器永远只是去加载jre.jar包中的那个java.lang.String.由于在tomcat的web应用程序中,都是由webapp自 ...

随机推荐

  1. Linux.cp命令总提示是否覆盖

    执行cp命令,其实是默认执行了cp -i命令的别名,因此总提示是否覆盖. 修改~/.bashrc,注释“alias cp='cp -i'”即可. [root@xxxx test]# vi ~/.bas ...

  2. [bzoj2038] [洛谷P1494] [2009国家集训队] 小Z的袜子(hose)

    Description 作为一个生活散漫的人,小Z每天早上都要耗费很久从一堆五颜六色的袜子中找出一双来穿.终于有一天,小Z再也无法忍受这恼人的找袜子过程,于是他决定听天由命-- 具体来说,小Z把这N只 ...

  3. 域渗透之票据传递攻击(pass the ticket,ptt)

    票据传递攻击(PtT)是一种使用Kerberos票据代替明文密码或NTLM哈希的方法.PtT最常见的用途可能是使用黄金票据和白银票据,通过PtT访问主机相当简单. 1.ptt攻击的部分 就不是简单的N ...

  4. 14、python异常处理及断言

    前言:本文主要介绍python中异常的处理及断言,包括异常类型.异常捕获.主动跑出异常和断言. 一.异常类型介绍 什么是异常?异常即是一个事件,该事件会在程序执行过程中发生,会影响程序的正常执行,一般 ...

  5. basic-pentesting-1 靶机提权

    原文地址:https://www.payload.com.cn/   basic-pentesting-1 下载地址: https://www.vulnhub.com/entry/basic-pent ...

  6. Python PE8编程规范

    参考博客:https://blog.csdn.net/weixin_39723544/article/details/82144280 1.使用四个空格而不是tab进行缩进 2.默认使用utf-8编码 ...

  7. 强大的 Python 任务自动化工具!invoke 十分钟入门指南

    接着前面的<tox 教程>,以及刚翻译好的<nox文档>,我们继续聊聊 Python 任务自动化的话题. nox 的作者在去年的 Pycon US 上,做了一场题为<Br ...

  8. springIOC源码接口分析(十一):ConfigurableApplicationContext

    一 实现接口 关系图: ConfigurableApplicationContext接口实现了三个接口,ApplicationContext, Lifecycle, Closeable, Applic ...

  9. Windows下查看dll被哪个进程调用

    卸载程序,结果没卸载干净---程序的安装目录中还剩下一个dll文件.想删,结果系统提示说dll文件被某个进程占用了,不让删. 先前碰到这种做法,我都是直接使用unlocker先unlock一下,然后删 ...

  10. GetWindowRect与GetClientRect 的区别

    GetWindowRect 函数功能:该函数返回指定窗口的边框矩形的尺寸.该尺寸以相对于屏幕坐标左上角的屏幕坐标给出. 函数原型:BOOL GetWindowRect(HWND hWnd,LPRECT ...