016.2 String
内容:String方法+练习
#######################################
比较方法:equals()
字符串长度:int length()
字符的位置:int indexOf(ch,fromIndex);
获取指定位置上的字符:char charAt(int)
获取部分字符串:String substring(int start,int end);
字符串变成数组:toCharArray()
String方法查找练习:
* 1,字符串是否以指定字符串开头。结尾同理。
* boolean startsWith(string)
* boolean endsWith(string)
*
* 2,字符串中是否包含另一个字符串。
* boolean contains(string);
* int indexOf(string)//如果返回-1,表示不存在。
*
* 3,字符串中另一个字符串出现的位置。
* int indexOf(string)
* 4,将字符串中指定的字符串替换成另一个字符串。
* String replace(oldstring , newstring)
*
* 5,字符串如何比较大小?
*
* 6,将字符串转成一个字符数组。或者字节数组。
* toCharArray()
* getBytes()
* 7,将字母字符串转成大写的字母字符串。
* toUpperCase()
* toLowerCase();
* 8,将字符串按照指定的方式分解成多个字符串, "lisi,wangwu,zhaoliu"获取三个姓名。
* String[] split(string);
#compareTo(对象) 对象比较方法
############查找一个字符串里面有多少个另外一个字符串
public class StringTest2_2 {
public static void main(String[] args) {
/*
* 案例二:
* "witcasteritcasttyuiitcastodfghjitcast"有几个itcast
*
* 思路:
* 1,无非就是在一个字符串中查找另一个字符串。indexOf。
* 2,查找到第一次出现的指定字符串后,如何查找第二个呢?
* 3,无需在从头开始,只要从第一次出现的位置+要找的字符串的长度的位置开始向后查找下一个第一次出现的位置即可。
* 4,当返回的位置是-1时,查找结束。
*/
String str = "witcasteritcasttyuiitcastodfghjitcast";
String key = "itcast";
int count = getKeyCount(str,key);
System.out.println("count="+count);
/*
int x = str.indexOf(key,0);//从头开始找。
System.out.println("x="+x);
int y = str.indexOf(key,x+key.length());//从指定起始位开始找。
System.out.println("y="+y);
int z = str.indexOf(key,y+key.length());//从指定起始位开始找。
System.out.println("z="+z);
int a = str.indexOf(key,z+key.length());//从指定起始位开始找。
System.out.println("a="+a);
int b = str.indexOf(key,a+key.length());//从指定起始位开始找。
System.out.println("b="+b);
*/
}
/**
* 获取key在str中出现次数。
*/
public static int getKeyCount(String str, String key) {
//1,定义变量。记录每一次找到的key的位置。
int index = 0;
//2,定义变量,记录出现的次数。
int count = 0;
//3,定义循环。只要索引到的位置不是-1,继续查找。
while((index = str.indexOf(key,index))!=-1){
//每循环一次,就要明确下一次查找的起始位置。
index = index + key.length();
//每查找一次,count自增。
count++;
}
return count;
}
}
##################另外一个程序:要求,将该字符串按照长度由长到短打印出来
public class StringTest2_3 {
public static void main(String[] args) {
/*
* 案例三: "itcast_sh"要求,将该字符串按照长度由长到短打印出来。 itcast_sh itcast_s tcast_sh
*/
String str = "itcast";
printStringByLength(str);
}
public static void printStringByLength(String str) {
// 1,通过分析,发现是for嵌套循环。
for (int i = 0; i < str.length(); i++) {
for (int start = 0, end = str.length() - i; end <= str.length(); start++, end++) {
//根据start,end截取字符串。
String temp = str.substring(start, end);
System.out.println(temp);
}
}
}
}
016.2 String的更多相关文章
- C#和Java中执行SQL文件脚本的代码(非常有用)
原文:C#和Java中执行SQL文件脚本的代码(非常有用) 我们在做程序的时候有事后会涉及到利用sql文件 直接执行,可是在sql文件中有很多注释,我们要一句一句的执行首先必须的得把sql文件解析 去 ...
- IOS_DatePicker_PickerView_SegmentControl_键盘处理
H:/0712/01_UIController_MJViewController.m // MJViewController.m // 01-总结复习 // Created by apple on 1 ...
- 周末惊魂:因struts2 016 017 019漏洞被入侵,修复。
入侵(暴风雨前的宁静) 下午阳光甚好,想趁着安静的周末静下心来写写代码.刚过一个小时,3点左右,客服MM找我,告知客户都在说平台登录不了(我们有专门的客户qq群).看了下数据库连接数,正常.登录阿里云 ...
- Java String Class Example--reference
reference:http://examples.javacodegeeks.com/core-java/lang/string/java-string-class-example/ 1. Intr ...
- mysql进阶(二十二)MySQL错误之Incorrect string value: '\xE7\x81\xAB\xE7\x8B\x90...中文字符输入错误
MySQL错误之Incorrect string value: '\xE7\x81\xAB\xE7\x8B\x90...' for column 'tout' at row 1中文字符输入错误 在实验 ...
- java Illegal unquoted character ((CTRL-CHAR, code X)): has to be escaped using backslash to be included in string value
今天在同步日志到ES的时候出现转换Json后 存到es中报这个错. Illegal unquoted character ((CTRL-CHAR, code X)): has to be escape ...
- [C/C++] String Reverse 字符串 反转
#include <iostream> #include <string> #include <algorithm> #include <cstring> ...
- 透过WinDBG的视角看String
摘要 : 最近在博客园里面看到有人在讨论 C# String的一些特性. 大部分情况下是从CODING的角度来讨论String. 本人觉得非常好奇, 在运行时态, String是如何与这些特性联系上的 ...
- JavaScript String对象
本编主要介绍String 字符串对象. 目录 1. 介绍:阐述 String 对象的说明以及定义方式. 2. 实例属性:介绍 String 对象的实例属性: length. 3. 实例方法:介绍 St ...
随机推荐
- XmlDocument.LoadXml和Load的区别
LoadXml:从指定的字符串加载 XML 文档. eg:doc.LoadXml("<root>aa</root>"); .csharpcode, .csh ...
- php 数组任意位置插入值
array_splice() $arr = array('A', 'B', 'C'); $arr2 = 'abc';$t = array_splice($arr, 1, 0, $arr2); prin ...
- Linq lambda 匿名方法
课程6 委托.匿名方法.Lambda表达式.Linq查询表达式 上课日志1 一.委托的基本认识 提问:能不能把方法作为参数传递??? 也即是能不能声明一个能存放方法的变量呢——委托. 委托是一种数据类 ...
- Dapper的简单使用(初学者归纳)
Dapper的简单使用(初学者归纳) //引用:using System;using System.Collections.Generic;using System.Linq;using System ...
- 01 使用Git基本方法
什么是Git? Git是目前世界上最先进的分布式版本控制系统(没有之一). 你得先有一个Git仓库,才能进行操作.创库就是Git存放你要保存的快照的数据的地方. 拥有一个Git仓库,有两种方法. 创建 ...
- GIT 基础-基础命令
环境 centos7 1.安装 #yum install git 2.创建本地仓库 ( 这里用 /www/git) 这里里有个隐藏的文件夹 ```.git``` 为git仓库的配置文件夹, 不可随意修 ...
- 实习小结(二)--- SSM框架搭建
SSM项目框架搭建 前几天做了一个学生信息管理的项目,使用纯控制台输入,查询数据库,将信息在控制台中打印,功能完善得差不多之后,老师让将这个项目移植到Web中,使用Spring+SpringMVC+M ...
- sql 模糊搜素拼接
if($irb_order!=''){ $condition .= " AND d.irb_order like '%".$irb_order."%'"; } ...
- Thymeleaf学习记录(4)--$/*/#/@语法
表达式符号 Thymeleaf对于变量的操作主要有$\*\#三种方式: 变量表达式: ${...},是获取容器上下文变量的值. 选择变量表达式: *{...},获取指定的对象中的变量值.如果是单独的对 ...
- MVC 事物同时保存,更新数据库
本人小白一枚,第一次写博,主要用作笔记,怕以后忘记了,大神尙可路过,也可多多指教 事物用在同时保存更新数据时,及只要在事物块的范围内,有一个操作出错则事物块所有更新,保存等操作都不会执行 ...