1 package cn.itcast.p1.string.demo;
2
3 import java.util.Iterator;
4
5 import com.sun.org.apache.xpath.internal.operations.Equals;
6
7 public class StringMethodDemo {
8
9 public static void main(String[] args) {
10 /*
11 * 按照面向对象的思想对字符串进行功能分类。
12 * "abcd"
13 *
14 * 1,获取:
15 * 1.1获取字符串中字符的个数(长度)。
16 * int length();
17 * 1.2根据位置获取字符。
18 * char charAt(int index)\
19 * 1.3根据字符获取在字符串中的第一次出现的位置。***(重点)
20 * int indexOf(int ch)
21 * int indexOf(int ch,int fromIndex):从指定位置进行ch的查找第一次出现位置
22 * int indexOf(String str)
23 * int indexOf(String str,fromIndex)
24 * 根据字符获取在字符串中的第一次出现的位置。***(重点)
25 * int lastIndexOf(int ch)
26 * int lastIndexOf(int ch,int fromIndex):从指定位置进行ch的查找第一次出现位置
27 * int lastIndexOf(String str)
28 * int lastIndexOf(String str,fromIndex)
29 * 1.4获取字符串中一部分字符串。也叫子串。
30 * String substring(int beginIndex,int endIndex)
31 * String substring(int beginIndex)
32 *
33 *
34 * 2, 转换。
35 * 2.1将字符串变成字符串数组(字符串的切割)
36 * String[] split(String regex)涉及到正则表达式
37 * 2.2将字符串变成字符数组。
38 * char[] toCharArray()
39 * 2.3将字符串变成字节数组。
40 * byte[] getBytes()
41 * 2.4将字符串中的字母转成大小写。
42 * String toUpperCase():大写
43 * String toLowerCase():小写
44 * 2.5将字符串中的内容进行替换
45 * String replace(char oldChar,char newChar)
46 * String replace(String s1,String s2)
47 * 2.6将字符串两端的空格去除。
48 * String trim();
49 * 2.7将字符串进行连接。
50 * String concat(String str)
51 * 3,判断
52 * 3.1两个字符串内容是否相同?
53 * boolean equals(Object obj)
54 * boolean equalsIgnoreCase(String str) 忽略大小写比较字符串内容
55 * 3.2字符串中是否包含指定字符串?
56 * boolean contains(String str)
57 * 3.3字符串是否以指定字符串开头。是否以指定字符串结尾
58 * boolean startsWith(String str)
59 * boolean endsWith(String str)
60 *
61 * 4,比较
62 * 4.1
63 */
64 stringMethodDemo_1();
65
66 stringMethodDemo_2();
67
68 stringMethodDemo_3();
69
70 stringMethodDemo_4();
71
72 }
73
74 private static void stringMethodDemo_4() {
75 System.out.println("a".compareTo("c"));//返回大于0 等于0 小于0
76 System.out.println("abc".compareTo("apq"));//依赖对象自身特点完成比较
77
78 }
79
80 private static void stringMethodDemo_3() {//字符串判断功能
81 String s = "abc";
82 System.out.println(s.equals("ABC"));
83 System.out.println(s.equalsIgnoreCase("ABC"));
84 System.out.println(s.contains("bc"));//可以用indexOf,contains 1.5版本后该方法才有
85
86 String str = "ArrayDemo.java";
87 System.out.println(str.startsWith("Array"));
88 System.out.println(str.endsWith("java"));
89 System.out.println(str.contains("Demo"));
90
91 }
92
93 private static void stringMethodDemo_2() {//字符串转换功能
94 String s = "张三,李四,王五";
95 String[] arr = s.split("李四");//"."这个点是正则里面用到的 不能用于切割 要用 \\.
96 for (int i = 0; i < arr.length; i++) {
97 System.out.println(arr[i]);
98
99 }
100
101 char[] chs = s.toCharArray();
102 for (int i = 0; i < chs.length; i++) {
103 System.out.println(chs[i]);
104
105 }
106 s = "ab你";
107 byte[] bytes = s.getBytes();
108 for (int i = 0; i < bytes.length; i++) {
109 System.out.println(bytes[i]);
110
111 }//97 98 -60 -29
112
113 System.out.println("ABc".toUpperCase());
114
115 System.out.println("java".replace('a', 'o'));//jovo
116 System.out.println("java".replace('q', 'e'));//java
117
118 String s1 = "java";
119 String s2 = s1.replace('q', 'z');
120 System.out.println(s1==s2);//true
121
122 System.out.println("-"+"abc".trim()+"-");
123 System.out.println("-"+" ab c".trim()+"-");
124
125 System.out.println("abc".concat("kk"));//abckk更专业点
126 System.out.println("abc"+"kk");//abckk
127
128 System.out.println(String.valueOf(4)+1);
129 }
130
131 public static void stringMethodDemo_1() {//字符串获取功能
132 // TODO Auto-generated method stub
133 String s = "abcdae";
134 System.out.println("length:"+s.length());//6
135 System.out.println("char:"+s.charAt(2));//c
136 // System.out.println("char:"+s.charAt(20));// java.lang.StringIndexOutOfBoundsException
137 System.out.println("index:"+s.indexOf('a'));//0
138 System.out.println("index:"+s.indexOf('k'));//-1我们可以根据-1来判断该字符或字符串是否存在
139 System.out.println("iastIndex:"+s.lastIndexOf('a'));//4
140 System.out.println(s.indexOf(97));//打印0
141
142 System.out.println("substring:"+s.substring(2,4));
143 }
144
145 }

String类(获取,转换,判断,比较)的更多相关文章

  1. Java基础知识强化34:String类之String类的转换功能

    1. String类的转换功能 String[] split(String regex)//将字符串变成字符串数组(字符串切割) byte[] getBytes()//将字符串变成字节数组 char[ ...

  2. String类的转换功能

    /* * String类的转换功能 * char[] toCharArray():把字符串转换为字符数组 * String toLowerCase():把字符串转换为小写字符串 * String to ...

  3. java11-5 String类的转换功能

    String的转换功能: byte[] getBytes():把字符串转换为字节数组. char[] toCharArray():把字符串转换为字符数组. static String valueOf( ...

  4. String类的常用判断方法使用练习

    选取了一些常用的判断方法进行了使用练习,后续跟新其他方法 package StringDemo; // String类的判断方法解析 // 1:boolean equals(); // 判断字符串是否 ...

  5. 102、Java中String类之相等判断(忽略大小写)

    01.代码如下: package TIANPAN; /** * 此处为文档注释 * * @author 田攀 微信382477247 */ public class TestDemo { public ...

  6. Java API ——String类

    1.String类概述 · 字符串是由多个字符组成的一串数据(字符序列),也可以看成是一个字符数组. · 字符串字符值“abc”也可以看成是一个字符串对象. · 字符串是常量,一旦被赋值,就不能被改变 ...

  7. java学习笔记之String类

    String类总结 String类概述: java.lang.String 类是字符串操作类 String类的常用构造方法: //1.直接赋值 String str= "hellojava& ...

  8. String类中的常用方法

    String类 一.转换成String方法 1.public String(); 空参构造 初始化一个新创建的 String 对象,使其表示一个空字符序列 2.public String(byte[] ...

  9. 8:String类

    String类 String类的特点: 字符串对象一旦被初始化就不会被改变. 字符串是最常用的类型之一,所以为了使用方便java就给封装成了对象方便使用  public static void str ...

  10. Java——String类

    body, table{font-family: 微软雅黑; font-size: 10pt} table{border-collapse: collapse; border: solid gray; ...

随机推荐

  1. JAVA结合Redis处理缓存穿透问题

    public List<WeixinMenu> getList() { List<WeixinMenu> weixinMenuList= (List<WeixinMenu ...

  2. SpringBoot统一日志打印

    统一日志打印 @Slf4j @Aspect @Component public class ControllerLog { private static final ThreadLocal<Lo ...

  3. 【LeetCode】NO.376 摆动序列 (Python) [贪心算法]

    376. 摆动序列 题目 如果连续数字之间的差严格地在正数和负数之间交替,则数字序列称为 摆动序列 .第一个差(如果存在的话)可能是正数或负数.仅有一个元素或者含两个不等元素的序列也视作摆动序列. 例 ...

  4. c++11多线程常用代码总结

    关于 好记性不如烂笔头 理解虽然到位,但是时间长了就容易忘. 本文仅总结自己经常忘记的知识点,非 详细解释多线程某些原理.概念. 抱着复习的态度总结此文. 本文参考: cppreference 欢迎指 ...

  5. 【LeetCode】1208. 尽可能使字符串相等 Get Equal Substrings Within Budget (Python)

    作者: 负雪明烛 id: fuxuemingzhu 公众号:每日算法题 本文关键词:LeetCode,力扣,算法,算法题,字符串,并查集,刷题群 目录 题目描述 示例 解题思路 滑动窗口 代码 刷题心 ...

  6. 【LeetCode】657. Judge Route Circle 解题报告

    [LeetCode]657. Judge Route Circle 标签(空格分隔): LeetCode 题目地址:https://leetcode.com/problems/judge-route- ...

  7. 【LeetCode】319. Bulb Switcher 解题报告(Python)

    [LeetCode]319. Bulb Switcher 解题报告(Python) 标签(空格分隔): LeetCode 题目地址:https://leetcode.com/problems/bulb ...

  8. 1135 - Count the Multiples of 3

    1135 - Count the Multiples of 3   PDF (English) Statistics Forum Time Limit: 3 second(s) Memory Limi ...

  9. 编写Java程序_找星座朋友应用软件

    一.About the Project 项目介绍 自古以来,人对于恒星的排列和形状很感兴趣,并很自然地把一些位置相近的星联系起来,组成星座.占星术亦称"占星学"."星占学 ...

  10. 编写Java程序,随机给定一个数字猜大小

    返回本章节 返回作业目录 需求说明: 由系统随机生成一个1~100之间的整数. 通过控制台一直输入一个整数,比较该数与系统随机生成的那个数,如果大就输出"猜大了.",继续输入:如果 ...