文章目录
Day 10
2019年4月21日。
这是我学习Java的第十天。
这一天,我学到了以下的知识。
String类的经典算法
- 判断字符串中字符的唯一性
要求:判断一个字符串中,某个字符只有一个
代码如下
public class Test {
public static void main(String[] args) {
String string = new String();
Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个字符串");
string = scanner.nextLine();
/* 以字符a为例,若a在这个字符串中第一次出现的索引和最后一次出现的索引相同,
则这个字符串中仅存在一个a */
if (string.indexOf('a') == string.lastIndexOf('a')){
System.out.println("a这个字符只有一个!");
}
else {
System.out.println("a这个字符不只有一个!");
}
System.out.println(string);
}
}
- 反转录入字符串
要求:从键盘上输入abcde,输出edcba
代码如下
public class Test {
public static void main(String[] args) {
String string = new String();
String string2 = new String();
Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个字符串");
string = scanner.nextLine();
// 反向遍历后将值赋入一个新的字符串
for (int i = string.length() - 1; i >= 0; i--) {
string2 += string.charAt(i);
}
System.out.println(string2);
}
}
- 字符串的大小写转换
要求:从键盘上输入abcde,输出ABCDE
代码如下
public class Test {
public static void main(String[] args) {
String string = new String();
Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个字符串");
string = scanner.nextLine();
System.out.println(string.toUpperCase());
}
}
-
从字符串中寻找指定字符串
要求:从键盘上输入woyaoxuejava,xihuanjava,aijava,javajavawozuiai,判断其中出现了几次java
代码如下
public class Test {
public static void main(String[] args) {
String string = new String();
int tag = 0;
Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个字符串");
string = scanner.nextLine();
for (int i = 0; i < string.length() - 4; i++) {
if (string.substring(i,i+4).equals("java")){
tag++;
}
}
System.out.println(tag);
}
}
-
判断字符串中大写字母、小写字母、数字的个数
要求:从键盘上输入数据,统计键盘录入的字符串中包含大写字母、小写字母、数字的个数
代码如下
public class Test {
public static void main(String[] args) {
String string = new String();
Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个字符串");
string = scanner.nextLine();
int a = 0,b = 0,c = 0;
for (int i = 0; i < string.length(); i++) {
if (string.charAt(i) >= 'a' && string.charAt(i) <= 'z'){
a++;
}
else if (string.charAt(i) >= 'A' && string.charAt(i) <= 'Z'){
b++;
}
else if (string.charAt(i) >= '0' && string.charAt(i) <= '9'){
c++;
}
}
System.out.println("小写字母有:" + a + "大写字母有:" + b + "数字有:" + c);
}
}