String类(获取,转换,判断,比较)


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类(获取,转换,判断,比较)的更多相关文章
- Java基础知识强化34:String类之String类的转换功能
1. String类的转换功能 String[] split(String regex)//将字符串变成字符串数组(字符串切割) byte[] getBytes()//将字符串变成字节数组 char[ ...
- String类的转换功能
/* * String类的转换功能 * char[] toCharArray():把字符串转换为字符数组 * String toLowerCase():把字符串转换为小写字符串 * String to ...
- java11-5 String类的转换功能
String的转换功能: byte[] getBytes():把字符串转换为字节数组. char[] toCharArray():把字符串转换为字符数组. static String valueOf( ...
- String类的常用判断方法使用练习
选取了一些常用的判断方法进行了使用练习,后续跟新其他方法 package StringDemo; // String类的判断方法解析 // 1:boolean equals(); // 判断字符串是否 ...
- 102、Java中String类之相等判断(忽略大小写)
01.代码如下: package TIANPAN; /** * 此处为文档注释 * * @author 田攀 微信382477247 */ public class TestDemo { public ...
- Java API ——String类
1.String类概述 · 字符串是由多个字符组成的一串数据(字符序列),也可以看成是一个字符数组. · 字符串字符值“abc”也可以看成是一个字符串对象. · 字符串是常量,一旦被赋值,就不能被改变 ...
- java学习笔记之String类
String类总结 String类概述: java.lang.String 类是字符串操作类 String类的常用构造方法: //1.直接赋值 String str= "hellojava& ...
- String类中的常用方法
String类 一.转换成String方法 1.public String(); 空参构造 初始化一个新创建的 String 对象,使其表示一个空字符序列 2.public String(byte[] ...
- 8:String类
String类 String类的特点: 字符串对象一旦被初始化就不会被改变. 字符串是最常用的类型之一,所以为了使用方便java就给封装成了对象方便使用 public static void str ...
- Java——String类
body, table{font-family: 微软雅黑; font-size: 10pt} table{border-collapse: collapse; border: solid gray; ...
随机推荐
- 使用iframe内嵌PC网站实现高度自适应
加个样式 <style> iframe { display: block; border: none; height: 90vh;/*设置高度百分比,一直调到只有一个滚动调为止*/ wid ...
- Ubuntu Server服务器上架设Git Server服务器
1.设置公钥 ubuntu:/home/git$ ssh-keygen -t rsa #生成密钥 这里会提示输入密码,我们不输入直接回车即可. 然后用刚生成公钥/home/git/.ssh/id_rs ...
- c++之面试题(1)
题目 有十瓶药,每瓶里都装有100片药,其中有八瓶里的药每片重10克,另有两瓶里的药每片重9克.用一个蛮精确的小秤,只称一次,如何找出份量较轻的那两个药瓶? 解法 1.分别给10个药瓶按照斐波那契数列 ...
- nim_duilib(16)之xml学习实战(GTAV加载窗口实现)
本文的目标 使用配置xml实现下面的结果 布局 整体采用水平布局,左边显示文字区域设置为垂直布局. lets go stage 1 创建一个空白窗体,并设置为半透明:同时,使得整个窗口可以移动,则 将 ...
- 【LeetCode】361. Bomb Enemy 解题报告(C++)
作者: 负雪明烛 id: fuxuemingzhu 个人博客:http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 暴力搜索 日期 题目地址:https://leetco ...
- 【LeetCode】117. Populating Next Right Pointers in Each Node II 解题报告(Python)
[LeetCode]117. Populating Next Right Pointers in Each Node II 解题报告(Python) 标签: LeetCode 题目地址:https:/ ...
- Revolving Digits(hdu4333)
Revolving Digits Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) ...
- Rainbond通过插件整合ELK/EFK,实现日志收集
前言 ELK 是三个开源项目的首字母缩写:Elasticsearch.Logstash 和 Kibana.但后来出现的 FileBeat 可以完全替代 Logstash的数据收集功能,也比较轻量级.本 ...
- 难搞的偏向锁终于被 Java 移除了
背景 在 JDK1.5 之前,面对 Java 并发问题, synchronized 是一招鲜的解决方案: 普通同步方法,锁上当前实例对象 静态同步方法,锁上当前类 Class 对象 同步块,锁上括号里 ...
- Vue.js高效前端开发 • 【Ant Design of Vue框架基础】
全部章节 >>>> 文章目录 一.Ant Design of Vue框架 1.Ant Design介绍 2.Ant Design of Vue安装 3.Ant Design o ...