String类的三个题

1.编程. 已知字符串:"this is a test of java".

按要求执行以下操作:
(1) 统计该字符串中字母s出现的次数
(2) 取出子字符串"test"
(3) 将本字符串复制到一个字符数组Char[] str中.
(4) 将字符串中每个单词的第一个字母变成大写, 输出到控制台。
(5) 将本字符串转换成一个字符串数组,要求每个数组元素都是一个有意义的额英文单词,并输出到控制台

package demo1;

import java.util.Locale;

public class Test1 {

    

    public static void main(String[] args) {
        
        String string  = "this is a test of java";
        
        // (1) 统计该字符串中字母s出现的次数
        int number  =string.split("[s]").length>0? string.split("[s]").length-1:0;
        System.out.println(number);
        
        //取出子字符串"test"
        System.out.println(string.substring(string.indexOf("test"), string.indexOf("test")+4));
        
        // (3) 将本字符串复制到一个字符数组Char[] str中.
        char[] str = string.toCharArray();
        
        //(4) 将字符串中每个单词的第一个字母变成大写, 输出到控制台。
        String[] str3 = string.split(" ");
        for(int i = 0;i<str3.length;i++)
        {
            if(!Character.isUpperCase(str3[i].charAt(0)))
            {               
              str3[i] = new StringBuilder().append(Character.toUpperCase(str3[i].charAt(0))).append(str3[i].substring(1)).toString();
            }
            System.out.print(str3[i]+" ");
            
        }
        System.out.println();

        //(5) 将本字符串转换成一个字符串数组,要求每个数组元素都是一个有意义的额英文单词,并输出到控制台
        String[] str2 = string.split(" ");
        for(int i = 0;i<str2.length;i++)
        {
            System.out.println(str2[i]);
        }
                
    }

}

2.字符串解析,现有一字符串,“卡巴斯基#杀毒软件#免费版#俄罗斯#”,解析出每个元素。

package demo1;

public class Test2 {

    public static void main(String[] args) {
     
        String string = "卡巴斯基#杀毒软件#免费版#俄罗斯#";
        
        String[] str = string.split("[#]");
        for (String string2 : str) {
            System.out.println(string2);
        }       
        
    }

}

4 .如下字符串:01#张三#2002#李四#1803#王五#2204#赵六#2005#田七#21分割出每个人的信息,样式如下:
01 张三 20
02 李四 18
。。。。

创建Student类,属性:学号 姓名 年龄
1将这些Student对象放进数组中
2.查询里面有没有叫田七的学生如果存在则打印学生的具体信息(封装成方法,键盘输入姓名)
3.计算所有学生的平均年龄,最大年龄,最小年龄
4.如果存在名字叫张三的将名字改为张兵

package demo1;

import java.util.Scanner;

public class Test3 {

    public static void main(String[] args) {
        
         String str = "01#张三#20*02#李四#18*03#王五#22*04#赵六#20*05#田七#21";   
         String[] str2 = str.split("[*]");
         //01#张三#20*02#李四#18*03#王五#22*04#赵六#20*05#田七#21分割出每个人的信息
         student[] stu = new student[str2.length];
         //1将这些Student对象放进数组中
         int i;
         for(i = 0;i<str2.length;i++)
         {           
             stu[i] =new student();
             String[] str3 = str2[i].split("[#]");
             stu[i].setTheClass(str3[0]);
             stu[i].setName(str3[1]);
             stu[i].setAge(Integer.parseInt(str3[2]));
         }
         //2.查询里面有没有叫田七的学生如果存在则打印学生的具体信息(封装成方法,键盘输入姓名)
         Scanner input = new Scanner(System.in);
         System.out.println("请输入您要查询的学生姓名");
         String name = input.next();
         PersonSearch(stu, name);
         //3.计算所有学生的平均年龄,最大年龄,最小年龄
         PersonSearch(stu);
         for(i = 0;i<stu.length;i++)
         {
             if(stu[i].getName().equals("张三"))
             {
                 stu[i].setName("张兵");
                 System.out.println(stu[i].getName());
                 break;
             }
         }
         
         
         

    }
    //查询函数
    public static void PersonSearch(student[] stu,String str)
    {
        boolean falg = true;
        for(int i = 0;i<stu.length;i++)
        {
            if(stu[i].getName().equals(str))
            {
                falg = false;
                System.out.println("班级:"+stu[i].getTheClass()+" 姓名:"+stu[i].getName()+" 年龄:"+stu[i].getAge());
            }
        }
        if(falg)
        {
            System.out.println("该学生不存在");
        }
        
    }
    
    public static void PersonSearch(student[] stu)
    {
        int minAge = stu[0].getAge();
        int maxAge = stu[0].getAge();
        int sumAge = stu[0].getAge();
        for(int i = 1;i<stu.length;i++)
        {
            if(minAge>stu[i].getAge())
            {
                minAge = stu[i].getAge();
            
            }
            else
                if(maxAge<stu[i].getAge())
                {
                    maxAge = stu[i].getAge();
                }
            sumAge+=stu[i].getAge();
        }
        System.out.println("最大年龄为:"+maxAge+" 最小年龄为:"+minAge+" 平均年龄为"+(sumAge)/stu.length);
        
    }
    
}
class student{
    private String TheClass;
    private int age;
    private String name;
    
    public student() {
        
    }
    public student(String theClass, int age, String name) {
        super();
        TheClass = theClass;
        this.age = age;
        this.name = name;
    }
    public String getTheClass() {
        return TheClass;
    }
    public void setTheClass(String theClass) {
        TheClass = theClass;
    }
    public int getAge() {
        return age;
    }
    public void setAge(int age) {
        this.age = age;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    @Override
    public String toString() {
        return "student [TheClass=" + TheClass + ", age=" + age + ", name=" + name + "]";
    }   
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容