首页 > 编程语言 >day08_我的Java学习笔记 (String类、ArrayList集合类)

day08_我的Java学习笔记 (String类、ArrayList集合类)

时间:2024-04-16 09:13:03浏览次数:29  
标签:day08 Java String students ArrayList studyId Student public

常用API(String、 ArrayList)

什么是API

API文档下载地址:
http://www.oracle.com/technetwork/java/javase/downloads/index.html

1.String简单介绍


【补充】:为什么java 数据类型 String 是大写?

1.1 String类概述




1.2 String类创建对象的2种方式









1.3 String类常见面试题

1.3.1 String类常见面试题(面试题一):



1.3.2 String类常见面试题(面试题二):



把编译后的文件拖进来之后,可以看到反编译出来的.class文件:即,Java将 "a" + "b" + "c"编译成"abc"给到底层处理器。

1.4 String类常用API-字符串内容比较





1.5 String类常用API-遍历、替换、截取、分割操作




1.6 String类案例实战






2.ArrayList简单介绍


2.1 集合概述




2.2 【ArrayList集合】快速入门



2.3 ArrayList对泛型的支持






2.4 ArrayList常用API、遍历




2.5 ArrayList集合案例:遍历并删除元素



2.6 ArrayList集合案例:存储自定义类型的对象





2.7 ArrayList集合案例:元素搜索



package day07_demo.demo_02;

public class Student {
    private String studyId;
    private String name;
    private int age;
    private String className;

    public Student() {
    }

    public Student(String studyId, String name, int age, String className) {
        this.studyId = studyId;
        this.name = name;
        this.age = age;
        this.className = className;
    }

    public String getStudyId() {
        return studyId;
    }

    public void setStudyId(String studyId) {
        this.studyId = studyId;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public String getClassName() {
        return className;
    }

    public void setClassName(String className) {
        this.className = className;
    }
}
package day07_demo.demo_02;

import java.util.ArrayList;
import java.util.Scanner;

/**
    案例:学生信息系统:展示数据,并按照学号完成搜索
     学生类信息(学号,姓名,性别,班级)
     测试数据:
     "20180302","叶孤城",23,"护理一班"
     "20180303","东方不败",23,"推拿二班"
     "20180304","西门吹雪",26,"中药学四班"
     "20180305","梅超风",26,"神经科2班"
 */
public class ArrayListTest6 {
    public static void main(String[] args) {
        // 1、定义一个学生类,后期用于创建对象封装学生数据
        // 2、定义一个集合对象用于装学生对象
        ArrayList<Student> students = new ArrayList<>();
        students.add(new Student("20180302","叶孤城",23,"护理一班"));
        students.add(new Student("20180303","东方不败",23,"推拿二班"));
        students.add(new Student( "20180304","西门吹雪",26,"中药学四班"));
        students.add(new Student( "20180305","梅超风",26,"神经科2班"));
        System.out.println("学号\t\t名称\t年龄\t\t班级");

        // 3、遍历集合中的每个学生对象并展示其数据
        for (int i = 0; i < students.size(); i++) {
            Student s = students.get(i);
            System.out.println(s.getStudyId() +"\t\t" + s.getName()+"\t\t"
                    + s.getAge() +"\t\t" + s.getClassName());
        }

        // 4、让用户不断的输入学号,可以搜索出该学生对象信息并展示出来(独立成方法)
        Scanner sc = new Scanner(System.in);
        while (true) {
            System.out.println("请您输入要查询的学生的学号:");
            String id = sc.next();
            Student s = getStudentByStudyId(students, id);
            // 判断学号是否存在
            if(s == null){
                System.out.println("查无此人!");
            }else {
                // 找到了该学生对象了,信息如下
                System.out.println(s.getStudyId() +"\t\t" + s.getName()+"\t\t"
                        + s.getAge() +"\t\t" + s.getClassName());
            }
        }
    }

    /**
      根据学号,去集合中找出学生对象并返回。
     * @param students
     * @param studyId
     * @return
     */
    public static Student getStudentByStudyId(ArrayList<Student> students, String studyId){
        for (int i = 0; i < students.size(); i++) {
            Student s = students.get(i);
            if(s.getStudyId().equals(studyId)){
                return s;
            }
        }
        return null; // 查无此学号!
    }
}

标签:day08,Java,String,students,ArrayList,studyId,Student,public
From: https://www.cnblogs.com/SuperLee017/p/18137332

相关文章

  • day09_我的Java学习笔记 (ATM系统_理解并学会使用break、return、continue、Random、S
    ATM系统1.项目介绍与功能演示1.1系统准备、首页设计Account.java每个用户的账户信息都是一个对象,需要提供账户类。01.在Account类中定义系统相关的属性信息(卡号、姓名、密码、余额、取现额度)02.定义Getter和Setter方法03.定义有参构造器04.定义无参构造......
  • Java中LinkedList
    LinkedList的长度是可变的。LinkedList是Java中的一个双向链表实现,它可以动态地增加或减少元素,因此其长度是可变的。这种动态性使得LinkedList在需要频繁插入或删除元素时具有一定的优势,因为它不需要像数组那样进行元素的移动操作。当你向LinkedList中添加或删除元素时,它......
  • Java中的数组
    以二维数组 Integer[][]MAP=newInteger[100][2]为例,实际上定义了一个包含100个元素的数组,每个元素本身也是一个数组,这个两个子数组又会包含两个Integer。那么在执行 MAP[index]==null 时,实际上是判断 MAP 数组中第 index 个位置的元素是否为 null由于初始化了 MAP......
  • java实现 给定一个地址经纬度,一组地址经纬度,找出在范围内的地址,和最接近的地址(单位:米)
    packagecom.example.demo10;importjava.util.ArrayList;importjava.util.List;/***java实现给定一个地址经纬度,一组地址经纬度,找出在范围内的地址,和最接近的地址**@authorlonglinji*@date2024/4/15*/publicclassGeoUtils{//地球半径,单位为公里......
  • [题解][2021-2022年度国际大学生程序设计竞赛第10届陕西省程序设计竞赛] Type The Str
    题目描述给定n个字符串,有以下几种操作:打出一个字符,花费1。删除一个字符,花费1。复制并打出一个之前打出过的字符串,花费k。求打出所有n个字符串的最小花费。(注意,打出顺序和字符串输入的顺序不必相同)题解显然,操作3需要算字符串的最长公共子序列来处理。这个问题可以转换为......
  • 结对编程——Java实现四则运算
    任务要求请两位同学以结对编码(一个同学coding,另一个同学在旁边审核代码,之后再交换角色)的方式完成本次实验,并把程序、运算结果、博客体会等截屏发到其中一位同学的博客上,并在博客中体现另一位同学的学号(仅学号不体现姓名)。小学老师要每周给同学出300道四则运算练习题。–这个程......
  • java实现 给定一个地址经纬度,一组地址经纬度,找出在范围内的地址,和最接近的地址
    packagecom.example.demo10;importjava.util.ArrayList;importjava.util.List;/***java实现给定一个地址经纬度,一组地址经纬度,找出在范围内的地址,和最接近的地址**@authorlonglinji*@date2024/4/15*/publicclassGeoUtils{//地球半径,单位为公里......
  • JAVA语言学习-Day10、11、12
    参考教学视频:秦疆learnJava-JUC1.什么是JUCjava.util工具包、包、分类java.util.concurrentjava.util.concurrent.atomicjava.util.concurrent.locks2.线程和进程举例:开启一个Typora(进程),输入、自动保存(线程)进程:一个程序一个进程往往可以包含多个线程,至少包含一个线程:写......
  • Java进行excel的导入导出操作
    excel表格的导出导入在业务中经常会遇到,下面介绍hutool和easyExcel两种操作excel的工具测试的实体类通过mybatis-plus生成的,用于导出数据的实体类@Getter@Setter@TableName("device_info")@ApiModel(value="DeviceInfo对象",description="")publicclassDeviceInfo......
  • java连接ssmsSqlserver数据库 报错信息:com.microsoft.sqlserver.jdbc.SQLServerExce
    解决办法:将官网下载的驱动文件打开,找到如下路径,并复制,粘贴放到jdk的bin目录下......