编程算法基地-2.1利用字符串API

时间:2023-03-08 15:56:51

2.1利用字符串API

字符串是Java类型最常用。并且是复合类型

串非常经常用于,其最佳API熟悉文档。

推断串中有没有反复的字符

String s =”abcdebxyz”;

推断当中有没有反复字符

/*推断串中有没有反复的字符
String s ="abcdebxyz";
推断当中有没有反复字符*/ package StringAPI; public class JudgeRepeatInString {
public static void main(String[] args) {
String s ="abcdex啊yz啊";
boolean judge = false;//推断标记,初始化没有反复 for(int i=0;i<s.length();i++){//首先遍历这个串
char c = s.charAt(i);//得到第i位的字符
if(s.lastIndexOf(c)!=i){//假设串中最后一次出现c表示的字符的位置!=i
judge = true;//有反复
}
}
System.out.println(judge);
}
}
true

 char

charAt(int index)


          返回指定索引处的 char 值。

 int

lastIndexOf(int ch)


          返回指定字符在此字符串中最后一次出现处的索引。

移位加密

ASCII码+一个数

串的定义是不能被改动的

所谓改动,是新生成一个新的串

假设大量的新生成新的串,对计算机有非常大压力

所以考虑把串变成char类型数组。移位加密后,在变成串,就可以。

/*移位加密
ASCII码+一个数 串的定义是不能被改动的
所谓改动,是新生成一个新的串
假设大量的新生成新的串,对计算机有非常大压力 所以考虑把串变成char类型数组,移位加密后,在变成串。就可以。
*/ package StringAPI; public class MoveSecret {
public static void main(String[] args) {
String s = "Where is my code?中文会非常乱吗?";
char c[] = s.toCharArray();//讲串转为char数组
for(int i=0;i<c.length;i++){
c[i]++;
} String s2 = new String(c);//讲char数组转回串,String的构造方法。 System.out.println(s2);
}
}
Xifsf!jt!nz!dpef@丮斈伛徉乲吘@

 char[]

toCharArray()


          将此字符串转换为一个新的字符数组。

String(char[] value)


          分配一个新的 String。使其表示字符数组參数中当前包括的字符序列。

 

推断

推断一个全路径名是否在c盘且是.ini扩展名。

"c:\\xyz\\bak\\x.ini" 复合标准

"ccc\\ttt\\kk\\ini" 则不是

/*
推断
推断一个全路径名是否在c盘且是.ini扩展名。 "c:\\xyz\\bak\\x.ini" 复合标准
"ccc\\ttt\\kk\\ini" 则不是 */
package StringAPI; public class JudgePath {
public static void main(String[] args) {
// String s = "ccc\\ttt\\kk\\ini" ;
String s = "c:\\xyz\\bak\\x.ini";
boolean judge = false; if (s.startsWith("c:\\") && s.endsWith(".ini")) {//以"c:\\"開始&&以".ini"结束
judge = true;
}
System.out.println(judge);
}
}
true

boolean

startsWith(String prefix)


          測试此字符串是否以指定的前缀開始。

 boolean

endsWith(String suffix)


          測试此字符串是否以指定的后缀结束。

版权声明:本文博客原创文章,博客,未经同意,不得转载。