ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

习题集(1)-Java常用类库

2021-06-08 14:36:35  阅读:273  来源: 互联网

标签:类库 Java String 习题集 classNum str 字符串 public name


 1 public class Demo01 {
 2     /**
 3      * 1.编写一个方法,将一段文本中的各个单词的字母顺序翻转,
 4      * 例如:"I like writing code best",将变成"I ekil gnitirw edoc tseb"。
 5      * @param args
 6      */
 7     public static void main(String[] args) {
 8         String str = "I like writing code best";
 9         method(str);
10     }
11 
12     public static void method(String str){
13         //将字符串按照空格切开
14         String[] ss = str.split(" ");
15         for(String sss : ss) {
16             //创建StringBuilder对象,将string类型转换为StringBuilder类
17             StringBuilder sb = new StringBuilder(sss);
18             //调用reverse()方法
19             StringBuilder reverse = sb.reverse();
20             System.out.print(reverse + " ");
21         }
22     }
23 }

 

 1 public class Demo02 {
 2     /**
 3      * 2. String s="name=王五 age=18 classNum=1101”;
 4      * 将上面的字符串中包含的信息存放到 Student(里面有 name,age,
 5      * classNum 三个属性)的对象中
 6      * @param args
 7      */
 8     public static void main(String[] args) {
 9         String s = "name=王五 age=18 classNum=1101";
10         method(s);
11 
12     }
13     public static void method(String str){
14         //创建学生对象
15         Student student = new Student();
16         //将字符串按照空格分开
17         String[] ss = str.split(" ");
18         //遍历字符串数组,将每个元素按照=分割
19         for(String s:ss){
20             String[] split = s.split("=");
21             if(split[0].equals("name")){
22                 student.setName(split[1]);
23             }else if(split[0].equals("age")){
24                 student.setAge(Integer.valueOf(split[1]));
25             }else if(split[0].equals("classNum")){
26                 student.setClassNum(Integer.valueOf(split[1]));
27             }
28         }
29         System.out.println("学生的信息为:"+student);
30     }
31 }
32 class Student{
33     private String name;
34     private Integer age;
35     private Integer classNum;
36 
37     public String getName() {
38         return name;
39     }
40 
41     public void setName(String name) {
42         this.name = name;
43     }
44 
45     public Integer getAge() {
46         return age;
47     }
48 
49     public void setAge(Integer age) {
50         this.age = age;
51     }
52 
53     public Integer getClassNum() {
54         return classNum;
55     }
56 
57     public void setClassNum(Integer classNum) {
58         this.classNum = classNum;
59     }
60 
61     @Override
62     public String toString() {
63         return "Person{" +
64                 "name='" + name + '\'' +
65                 ", age=" + age +
66                 ", classNum=" + classNum +
67                 '}';
68     }
69 }

 


public class Demo03 {
/**
* 3. 字符串压缩:利用字符重复出现的次数,编写一种方法,实现基本的字符
* 串压缩功能。比如,字符串“aabccdd”会变成“a2b1c2d2”。若“压缩”以后的字
* 符串没有变短,则返回原先的字符串。你可以假设字符串中只包含大小写英文
* 字母(a-z)
* 示例 1:输入:aabcccccddddd
* 输出:a2b1c5d5
* 示例 2:输入:“abcdd” 输出:“abcdd” 解释:因为压缩后的字符串为:”a1b1c1d2”,长度大于原字符串
*
* @param args
*/

1 public static void main(String[] args) { 2 Scanner input = new Scanner(System.in); 3 System.out.println("请输入字符串"); 4 String s = input.nextLine(); 5 System.out.println(method(s)); 6 } 7 8 public static String method(String str) { 9 if (str.length() == 0) { 10 return str; 11 } 12 //创建StringBuilder类 13 StringBuilder sb = new StringBuilder(); 14 int js = 1; 15 char ch = str.charAt(0); 16 //遍历字符串 17 for (int i = 0; i < str.length(); i++) { 18 if (ch == str.charAt(i)) { 19 js++; 20 } else { 21 sb.append(ch); 22 sb.append(js); 23 ch = str.charAt(i); 24 js = 1; 25 } 26 } 27 sb.append(ch); 28 sb.append(js); 29 return str.length() > sb.length() ? sb.toString() : str; 30 } 31 }

 

 1 public class Demo04 {
 2     /**
 3      * 4.写一个和 trim 功能相同的方法
 4      * 思路:
 5      * 1.定义两个变量,用来存储两个角标
 6      * 2.分别从头和尾遍历字符串,直到找到第一个不为空格的字符
 7      * 3.截取字符串
 8      * @param args
 9      */
10     public static void main(String[] args) {
11         String str = "    aaabbbccc    ";
12         String ss = method(str);
13         System.out.println("结果为:"+ss);
14 
15     }
16 
17     public static String method(String str){
18        int begin = 0;
19        int end = str.length()-1;
20        //从头遍历字符串
21         for(int i =0;i<str.length();i++){
22             if(str.charAt(i)!=' '){
23                 begin = i;
24                 break;
25             }
26         }
27         //从尾巴遍历
28         for(int i =str.length()-1;i>=0;i--){
29             if(str.charAt(i)!=' '){
30                 end = i;
31                 break;
32             }
33         }
34         //调用方法截取字符串
35         return str.substring(begin,end+1);
36     }
37 }

 

标签:类库,Java,String,习题集,classNum,str,字符串,public,name
来源: https://www.cnblogs.com/baiyangshu/p/14862637.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有