(先说几个小问题 1.在main方法中调用主类的其他方法时,必须先生成主类的对象 2.String s = new String("Hello") 生成了两个对象 3.熟用布尔+for+if的组合)

一、Character类

  1.构造函数 public Character(char)

  2.常用方法

  public int compareTo(Character)  等于返回0,小于参数则返回小于0的值,大于参数则返回大于0的值。

  public boolean equals(Object obj)  判断两个对象是否值相等

  public char charValue()  返回Character对象的字符值

  public static boolean isUpperCase(char)  判断是否大写

  public static String toString(char c)   返回长度为1的字符串

二、字符串

  String类为字符串常量,StringBuffer类为字符串变量。Java将所有字符串作为对象处理。

  2.1 字符串常量和String类

  2.1.1构造函数

  public String()

  public String(String str)

  public String(char value[])

  public String(StringBuffer buffer)

  2.1.2 String类常用方法

  (1)字符串的连接 public String concat(String str)

  (2)求字符串长度 public int length()

  (3)求字符串某一位置的字符 public char charAt(int index)

  (4)字符串的比较

    1)public int compareTo(String anotherString)

    两个字符串中相同位置上的字符按Unicode中排列顺序逐个比较。

    如果一个字符串是另一个的子串(从首字符起),则返回两者的字符数差;否则返回首个不匹配字符的unicode值的差。

    2)public boolean equals(Object obj) 重载Object类的方法

    3)public boolean equalsIgnoreCase (String anotherString)

  (5)提取子串

    1)public String substring(int beginIndex)

    2) public String substring(int beginIndex,int endIndex)

  (6)判断字符串的前缀和后缀

    1)public boolean startsWith(String prefix)

    判断当前字符串前缀是否和prefix一致

    2)public boolean startsWith(String prefix,int toffset)

    判断从toffset开始当前字符串是否匹配prefix

    3)public boolean endsWith(String suffix)

    判断后缀是否匹配

  (7)字符串中单个字符的查找

    1)public int indexOf(int ch) ch为unicode值,也可以用 char ch

    2)public int indexOf(int ch,int fromIndex) fromIndex为搜索起点

    3)public int lastIndexOf(int ch)  //从后往前找,返回找到的第一个位置的索引

    4)public int lastIndexOf(int ch,int fromIndex)  //从fromIndex开始往前找

  (8)查找子串

    public int indexOf(String str)

    public int indexOf(String str,int fromIndex)

    public int lastIndexOf(String str)

    public int lastIndexOf(String str,int fromIndex)

    (查找失败返回-1)

  (9)字符串中字符大小写转换

    public String toLowerCase()

    public String toUpperCase()

  (10)去除头尾的空格(String 是常量,这里返回的是另一个字符串,原字符串不变)

    public String trim()

  (11)字符替换

    public String replace(char oldChar,char newChar)

    public String replaceFirst(String regex,String replacement)  用replacement的内容替换当前字符串中遇到的第一个与regex相一致的子串

    public String replaceAll(String regex,char replacement)  替换所有

  (12)字符串与基本数据类型间的转换

    1)其他->String

    static String valueOf(boolean b)

    static String valueOf(char c)

    static String valueOf(char[] data)

    static String valueOf(double d)

    static String valueOf(float f)

    static String valueOf(int i)

    但是实际中有更简便的方法,比如 String num = "" + int

    2)String->int

    int i = Integer.parseInt(String);

    System.out.println("1"+2+3+4);  //输出1234

    System.out.println(4+3+2+"1");  //输出91

2.2 关于字符串和常量池

  当程序第一次使用某个字符串直接量时,Java会使用常量池(constant pool)来缓存该字符串直接量,如果程序后面的部分需要用到该字符串直接量时,Java会直接使用常量池中的字符串直接量。

  常量池:指的是在编译期被确定,并被保存在已编译的.class文件中的一些数据。它包括关于类、方法、接口中的常量,也包括字符串直接量。

  

  

  

  

Java学习日记-3 Character和字符串的更多相关文章

  1. Java学习总结:飘逸的字符串

    Java学习:飘逸的字符串 前言 相信不管我们运用Java语言来开发项目还是进行数据分析处理,都要运用到和字符串相关的处理方法.这个社会处处有着和字符串相关的影子:日志.文档.书籍等.既然我们离不开字 ...

  2. Java学习2_一些基础2_字符串_16.5.5

    接上一次的博客. 不可变字符串: Java中String类没有提供用于修改字符串的方法.如果想将greeting中的“Hello”改为“Help!”需要先提取所需要的的字符,然后再拼接.即 greet ...

  3. Java学习日记-2 零零碎碎

    一.使用Scanner类进行控制台的输入 文档中Scanner类的定义为A simple text scanner which can parse primitive types and string ...

  4. Java学习日记——基础篇(二)基本语法

    变量 变量和常量是程序处理的两种基本数据对象,变量是程序的基本组成单位 变量的目的就是确定目标并提供存放空间 public class Hello { public static void main( ...

  5. Java学习日记之 Java-其他类型

    OK , 就绪, 第一篇博客开撸 ~ 先听了毕姥爷激情澎湃的其他类型 ,从这里开始入手吧 : (一)System类  System类代表系统类,系统的属性和方法都放在该类.System类是一个fina ...

  6. Java学习日记之 Java-IO流

    Java中的IO流在处理上分为字节流和字符流.字节流和字符流的区别 : 1.字节流读取的时候,读到一个字节就返回一个字节:  字符流使用了字节流读到一个或多个字节(中文对应的字节数是两个,在UTF-8 ...

  7. java学习笔记(三)字符串

    字符串String 创建方法: 一·通过new创建  String  str1= new String("abc"); 二 直接创建   String str2="abc ...

  8. Java学习日记——基本数据类型

    基本数据类型: byte 1个字节 正负都能表示2的8-1次方 -128~127(包括0) short 2个字节 2的16-1次 整数类型 (默认为int类型) int 4个字节 2的32-1次方 l ...

  9. java学习之—使用栈实现字符串数字四则运算

    /** * 使用栈存储后缀表达式 * Create by Administrator * 2018/6/13 0013 * 下午 2:25 **/ public class StackX { priv ...

随机推荐

  1. 解决Ubuntu 14.04 下SMPlayer的字幕乱码问题

    1.SMPlayer播放器 对于使用ubuntu系统的同学,虽然系统初始就带有vedio播放器,但是这里强烈推荐SMPlayer,直接在Ubuntu Software Center中就可以免费下载安装 ...

  2. POJ 1696 Space Ant 卷包裹法

    Space Ant Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 3316   Accepted: 2118 Descrip ...

  3. Word 查找替换,通配符一览表

    Word查找替换详细用法及通配符一览表 使用通配符要查找“?”或者“*”,可输入“\?”和“\*”,\1\2\3依次匹配数对括号内容查找(a)12(b)   替换\2XY\1   结果:bXYa ([ ...

  4. 谷歌postman插件用不了的命令行指令

    谷歌postman插件用不了,想测试通过post提交传过来的参数测试,打开所在目录,shift右键,打开命令窗口,输入一下指令,即可获取到提交的值curl -X POST -d 'name=kpf&a ...

  5. (转)PHP数组的总结(很全面啊)

    一.什么是数组数组就是一组数据的集合,把一系列数据组织起来,形成一个可操作的整体.数组的每个实体都包含两项:键和值. 二.声明数据在PHP中声明数组的方式主要有两种:一是应用array()函数声明数组 ...

  6. oracle中创建一个用户,只能查看指定的视图,如何授权,创建别名

    1.create user A identified by Apassword,创建用户,用户名是A,密码是Apassword2.grant connect to A --授予connect权限3.g ...

  7. 【转】 NSString / NSMutableString 字符串处理,常用代码 (实例)

    Objective-C 中核心处理字符串的类是 NSString 与 NSMutableString ,这两个类最大的区别就是NSString 创建赋值以后该字符串的内容与长度不能在动态的更改,除非重 ...

  8. CSP内容安全策略

    在浏览网页的过程中,尤其是移动端的网页,经常看到有很多无关的广告,其实大部分广告都是所在的网络劫持了网站响应的内容,并在其中植入了广告代码.为了防止这种情况发生,我们可以使用CSP来快速的阻止这种广告 ...

  9. C#防SQL注入代码的实现方法

    对于网站的安全性,是每个网站开发者和运营者最关心的问题.网站一旦出现漏洞,那势必将造成很大的损失.为了提高网站的安全性,首先网站要防注入,最重要的是服务器的安全设施要做到位. 下面说下网站防注入的几点 ...

  10. CMake交叉编译配置

    很多时候,我们在开发的时候是面对嵌入式平台,因此由于资源的限制需要用到相关的交叉编译.即在你host宿主机上要生成target目标机的程序.里面牵扯到相关头文件的切换和编译器的选择以及环境变量的改变等 ...