练习题01String
1、编写程序将 "jdk" 全部变为大写,并输出到屏幕,截取子串"DK" 并输出到屏幕
2、写一个方法判断一个字符串是否对称
3、编写一个程序,将下面的一段文本中的各个单词的字母顺序翻转:“To be or not to be",将变成"oT eb ro ton ot eb"
4、String s="name=zhangsan age=18 classNo=090728";
将上面的字符串拆分,结果如下:zhangsan 18 090728
5、使用两种方法把这个字符串中的单词首字母转为大写:
String str = “hello Java and Android!”
6、已知字符串:"this is a test of java"
按要求执行以下操作:
(1) 统计该字符串中字母s出现的次数
(2) 取出子字符串"test"
(3) 用多种方式将本字符串复制到一个字符数组Char[] str中.
(4) 将字符串中每个单词的第一个字母变成大写, 输出到控制台。
(5) 实现该字符串的倒叙输出。(用StringBuffer和for循环方式分别实现)
(6) 将本字符串转换成一个字符串数组,要求每个数组元素都是一个有意义的额英文单词,并输出到控制台
package com.xxx; public class homework1 { public static void main(String[] args) { String s = "jdk"; String s1 = s.toUpperCase(); System.out.println(s1); String s2 = s1.substring(1, 3); System.out.println(s2); } public static String reverseStr(String string) { char[] chars = string.toCharArray();//toCharArray将此字符串转换为一个新的字符数组。 //倒序遍历字符数组 //用一个string拼接 String str = ""; for (int i = chars.length - 1; i >= 0; i--) { str = chars[i] + ""; str.toString(); } return str; } } class homework2 { public static void main(String[] args) { // homework1.reverseStr("123"); } public static boolean symmetry(String string) { StringBuilder sb = new StringBuilder(string); StringBuilder reverse = sb.reverse(); return reverse.equals(string); } } class homework3 { public static void main(String[] args) { String s = "To be or not to be"; // char[] chars = s.toCharArray(); // System.out.println(chars); // for (int i = 0; i < chars.length; i++) { // System.out.print(new StringBuilder(chars[i]).reverse().toString()); // } String[] ss = s.split(" "); // System.out.println(ss); String str = ""; for (int i = 0; i < ss.length; i++) { StringBuilder result = new StringBuilder(ss[i]).reverse(); str = result + " "; System.out.print(str); } } } class homework4 { public static void main(String[] args) { String s = "name=zhangsan age=18 classNo=090728"; String[] ss = s.split(" ");//根据空格拆分 String pin = ""; for (int i = 0; i < ss.length; i++) { // int i1 = ss[i].indexOf("="); // ss[i].substring(i1); String[] temp = ss[i].split("=");//当前字符串截取成一个新的字符串数组 pin += temp[1] + " ";//第二个字符串拼接上一个空格 } System.out.println(pin.trim());//trim返回字符串的副本,忽略前导空白和尾部空白。 //方法二: //实例化StringBuffer StringBuffer sb = new StringBuffer(); //使用循环遍历 for (int i=0;i<ss.length;i++) { sb.append(ss[i].substring(ss[i].indexOf("=")+1)+" "); } System.out.println(sb); } } class homework5_1 { public static void main(String[] args) { String str = "hello Java and Android!"; String[] ss = str.split(" ");//拆分字符串数组,一个单词为一个字符串 String s3 = ""; for (int i = 0; i < ss.length; i++) { char c = ss[i].charAt(0);//获取每个单词的首字母 String s = Character.toString(c);//转为字符串 String s1 = s.toUpperCase();//转为大写 String s2 = ss[i].substring(1);//返回从第二个字母开始的单词字符串 s3 += s1.concat(s2) + " ";//拼接 } System.out.println(s3.trim()); } } class homework5_2 { public static void main(String[] args) { String str = "hello Java and Android!"; String[] ss = str.split(" ");//拆分字符串数组,一个单词为一个字符串 //取每个字符串的首字母转大写 String pin = ""; for (int i = 0; i < ss.length; i++) { pin += ss[i].substring(0, 1).toUpperCase() + ss[i].substring(1) + " "; } System.out.println(pin.trim()); } } class homework6 { public static void main(String[] args) { String string = "this is a test of java"; // exe1(string); // exe2(string); // exe3(string); // exe4(string); // exe5(string); exe6(string); } //统计该字符串中字母s出现的次数 public static void exe1(String string) { char[] chars = string.toCharArray(); int count = 0; for (int i = 0; i < chars.length; i++) { if ('s' == chars[i]) { count++; } } System.out.println(count); } //取出子字符串"test" public static void exe2(String string) { int test = string.indexOf("test"); System.out.println(string.substring(test, test + 4)); //方法二: //将字符串根据空格来进行拆分 String[] nums = string.split(" "); for (int i=0;i<nums.length;i++) { if (nums[i].equals("test")){ System.out.println(nums[i]); } } } //用多种方式将本字符串复制到一个字符数组char[] str中 public static void exe3(String string) { char[] str = string.toCharArray();//toCharArray将此字符串转换为一个新的字符数组。 } //将字符串中每个单词的第一个字母变成大写,输出到控制台 public static void exe4(String string) { String[] ss = string.split(" "); String pin = ""; for (int i = 0; i < ss.length; i++) { if (ss[i].charAt(0) >= 'a' && (ss[i].charAt(0) <= 'z')) { //charAt返回指定索引处的 char 值 ss[i] = ss[i].replace((ss[i].charAt(0) + ""), (ss[i].charAt(0) + "").toUpperCase()); } pin += ss[i] + " "; } System.out.println(pin); } //实现该字符串的倒序输出。(用StringBuffer和for循环方式分别实现) public static void exe5(String string) { char[] chars = string.toCharArray();//toCharArray将此字符串转换为一个新的字符数组。 String s = ""; for (int i = chars.length - 1; i >= 0; i--) { //注:这里要 -1 s += chars[i] + ""; } System.out.println(s); //方法二: System.out.println(new StringBuilder(string).reverse().toString()); } //将本字符串转换成一个字符串数组,要求每个数组元素都是一个有意义的英文单词,并输出到控制台 public static void exe6(String string) { String[] s = string.split(" "); // for (String s1 : s) { // System.out.println(s1); // } for (int i = 0; i < s.length; i++) { if (s[i].equals("") == false) {//如果下标元素字符串等于空不成立(不为空) System.out.println(s[i]); } } } }
本文作者:Ritchie里其
本文链接:https://www.cnblogs.com/wang-zeyu/p/16778874.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步