java学习-Day04

这篇博客介绍了如何在Java中实现一个简单的学生管理系统,包括添加学生、遍历学生信息、删除学生以及查询并修改学生年龄等功能。同时,文章还探讨了字符串的特点,如不可变性,以及在不同情况下的比较方式。此外,讲解了键盘录入、字符串统计、金额转换和字符串操作如截取、反转和拼接的实现,强调了字符串拼接的性能优化和StringBuilder的使用。最后,提供了几个字符串操作的练习题。
摘要由CSDN通过智能技术生成

简单学生系统
//定义一个长度为3的数组,数组存储1-3名学生对象作为初始数据
//要求1 再次加一个学生对象,并在添加时进行学号唯一性判断
//要求2 添加完毕后遍历所有学生信息
//要求3 通过id删除学生信息  存在删除,不存在表示删除失败
//要求4 删除完后,遍历所有学生信息
//要求5 查询数组id为002的学生,如果存在则将他的年龄加一

package Day04;

import java.util.Scanner;

public class StudentTest {
    public static void main(String[] args){

        //定义一个长度为3的数组,数组存储1-3名学生对象作为初始数据
        Student[] studentArray = new Student[4];
        Student s1 = new Student(001,"小姚",18);
        Student s2 = new Student(002,"小张",19);
        Student s3 = new Student(003,"小王",17);
        studentArray[0] = s1;
        studentArray[1] = s2;
        studentArray[2] = s3;
        Student[] arr = idJudgement(studentArray);
        Student[] arr1 = delete(arr,004);
        Student[] arr2 = addAge(arr,002);
        for (int i = 0; i < arr2.length; i++) {
            if(arr[i]!=null){
                System.out.println(arr2[i].getId()+arr2[i].getName()+arr2[i].getAge());
            }

        }
    }

    //要求1 再次加一个学生对象,并在添加时进行学号唯一性判断
    public static Student[]  idJudgement(Student[] arr){
        Student s = new Student();
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入添加对象的id");
        int id = sc.nextInt();
        boolean flag = contains(arr,id);
        if(flag){
            System.out.println("id重复,请修改后输入!");

        }else{
            s.setId(id);
            System.out.println("请输入添加对象的name");
            String name = sc.next();
            s.setName(name);
            System.out.println("请输入添加对象的age");
            int age = sc.nextInt();
            s.setAge(age);
            arr[3] = s;
            return arr;
        }
        return arr;

    }

    //判断是否存在
    public static boolean contains(Student[] arr,int number){
        boolean flag = false;
        for (int i = 0; i < arr.length - 1; i++) {
            if(arr[i].getId()==number){
                flag = true;
            }
        }
        return flag;
    }

    //要求3 通过id删除学生信息  存在删除,不存在表示删除失败
    public static Student[] delete(Student[] arr,int id){
        for (int i = 0; i < arr.length; i++) {
           if(arr[i].getId()==id){
               arr[i] = null;
               return arr;
           }
        }
        System.out.println("不存在要删除的id");
        return arr;
    }

    //要求5 查询数组id为002的学生,如果存在则将他的年龄加一
    public static Student[] addAge(Student[] arr,int id){
        for (int i = 0; i < arr.length; i++) {
            if(arr[i].getId()==id){
                int age = arr[i].getAge()+1;
                arr[i].setAge(age);
                return arr;
            }
        }
        System.out.println("不存在要增加年龄的id");
        return arr;
    }

}

字符串

字符串内容是不会发生变化的,它的对象在创建以后不会改变

1 直接赋值
2 传递字符数组,根据字符数组内容在创建一个新的字符串对象
需求:修改字符串内容   abc   Qbc
3 传递字节数组
需求:把字节信息转成字符串

2和3属于new关键字传教关键对象

字符串比较

==:对于基本数据类型比较的是数据值;对于引用数据类型比较的是地址值。

s1.equals(s2)  s1和s2完全一致为true
s1.equalsIgnoreCase(s2);  忽略大小写

键盘录入模拟账号登陆

                //1 定义正确的用户名和密码
        String rightUserName = "xiaoyao";
        String rightUserPassword = "123456";

           //2 键盘录入模拟登录的用户名密码
        Scanner sc = new Scanner(System.in);
        int count = 1;
        while (count<4){
            System.out.println("请输入用户名密码");
            String userName = sc.next();
            String userPassword = sc.next();
   
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值