package cn.itcast.object;
/*
需求1:自己实现trim方法
需求2:获取上传的文件名 "D:\\20171123\\day12\\Demo1.java"
需求3:将字符串对象中的字符反序
需求4:求一个子串在整串中出现的次数
*/
public class Demo2 {
public static void main(String[] args) {
String str = " 南京邮电大学 ";
//System.out.println(myTrim(str));
str = "D:\\20171123\\day12\\Demo1.java";
//getFileName(str);
str = "新中国好";
String newStr = reverse(str);
//System.out.println(newStr);
str = "abcjavaabcjabaabcjjabc";
getCount(str,"abc");
}
//求一个子串在整串中出现的次数
public static void getCount(String str,String target){
int count = 0; //用于记录出现的次数
int fromIndex = 0; //记录从哪个索引值开始寻找目标子串
while((fromIndex = str.indexOf(target, fromIndex))!=-1){ //如果indexof方法返回的不是-1,那么就是已经找到了目标元素
count++;
fromIndex = fromIndex + target.length();
}
System.out.println("出现的次数:"+count);
}
//将字符串对象中的字符反序
public static String reverse(String str){
char[] arr = str.toCharArray();
for(int startIndex = 0,endIndex = arr.length-1;startIndex<endIndex;startIndex++,endIndex--){
char temp = arr[startIndex];
arr[startIndex]=arr[endIndex];
arr[endIndex] = temp;
}
return new String(arr); //使用字符数组构建一个字符串
}
//获取上传的文件名 "D:\\20171123\\day12\\Demo1.java"
public static void getFileName(String str){
int index = str.lastIndexOf("\\");
String fileName = str.substring(index+1);
System.out.println("文件名是:"+fileName);
}
//需求1:自己实现trim方法
public static String myTrim(String str){
char[] arr = str.toCharArray(); //先转换成字符数组
while(true){ //确定开始的索引值
if(arr[startIndex]==' '){
startIndex++;
}else{
break;
}
}
while(true){ //确定结束的索引值
if(arr[endIndex]==' '){
endIndex--;
}else{
break;
}
}
return str.substring(startIndex,endIndex+1); //截取子串返回
}
}
/*
需求1:自己实现trim方法
需求2:获取上传的文件名 "D:\\20171123\\day12\\Demo1.java"
需求3:将字符串对象中的字符反序
需求4:求一个子串在整串中出现的次数
*/
public class Demo2 {
public static void main(String[] args) {
String str = " 南京邮电大学 ";
//System.out.println(myTrim(str));
str = "D:\\20171123\\day12\\Demo1.java";
//getFileName(str);
str = "新中国好";
String newStr = reverse(str);
//System.out.println(newStr);
str = "abcjavaabcjabaabcjjabc";
getCount(str,"abc");
}
//求一个子串在整串中出现的次数
public static void getCount(String str,String target){
int count = 0; //用于记录出现的次数
int fromIndex = 0; //记录从哪个索引值开始寻找目标子串
while((fromIndex = str.indexOf(target, fromIndex))!=-1){ //如果indexof方法返回的不是-1,那么就是已经找到了目标元素
count++;
fromIndex = fromIndex + target.length();
}
System.out.println("出现的次数:"+count);
}
//将字符串对象中的字符反序
public static String reverse(String str){
char[] arr = str.toCharArray();
for(int startIndex = 0,endIndex = arr.length-1;startIndex<endIndex;startIndex++,endIndex--){
char temp = arr[startIndex];
arr[startIndex]=arr[endIndex];
arr[endIndex] = temp;
}
return new String(arr); //使用字符数组构建一个字符串
}
//获取上传的文件名 "D:\\20171123\\day12\\Demo1.java"
public static void getFileName(String str){
int index = str.lastIndexOf("\\");
String fileName = str.substring(index+1);
System.out.println("文件名是:"+fileName);
}
//需求1:自己实现trim方法
public static String myTrim(String str){
char[] arr = str.toCharArray(); //先转换成字符数组
//定义两个变量记录开始与结束的索引值
int startIndex = 0;
int endIndex = arr.length-1;while(true){ //确定开始的索引值
if(arr[startIndex]==' '){
startIndex++;
}else{
break;
}
}
while(true){ //确定结束的索引值
if(arr[endIndex]==' '){
endIndex--;
}else{
break;
}
}
return str.substring(startIndex,endIndex+1); //截取子串返回
}
}