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
|
|
|
|
移位加密
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@丮斈伛徉乲吘@
|
|
|
判断
判断一个全路径名是否在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
|
|
|