文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

JAVA面对对象的应用方法

2023-06-20 19:13

关注

这篇文章主要介绍“JAVA面对对象的应用方法”,在日常操作中,相信很多人在JAVA面对对象的应用方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”JAVA面对对象的应用方法”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

目录

常用API

API理解

API (Application Programming Interface) :应用程序编程接口

指的就是 JDK 中提供的各种功能的 Java类,这些类将底层的实现封装了起来,我们不需要关心这些类是如何实现的,只需要学习这些类如何使用即可,我们可以通过帮助文档来学习这些API如何使用。

如何使用API帮助文档

主要是以下几步:  

打开帮助文档
  2. 找到选项卡中的索引框
  3. 在输入框中输入你要查找类,例如Random
  4. 看类在哪个包下
  5. 看类的描述
  6. 看构造方法
  7. 看成员方法

接下来讲解String类,StringBuilder类

String类

一. 基本内容:  

String 类代表字符串,Java 程序中的所有字符串文字(例如“abc”)都被实现为此类的实例。也就是说,Java 程序中所有的双引号字符串,都是 String 类的对象。String 类在 java.lang 包下,所以使用的时候不需要导包!

二. 特点:

关于String为啥不可改变

这里可以根据 jdk 的源码来分析。

字符串实际上就是一个 char 数组,并且内部就是封装了一个 char 数组。

并且这里 char 数组是被 final 修饰的:

public final class String    implements java.io.Serializable, Comparable<String>, CharSequence {        private final char value[];

  并且 String 中的所有的方法,都是对于 char 数组的改变,只要是对它的改变,方法内部都是返回一个新的 String 实例。

三. 构造方法

常用:

JAVA面对对象的应用方法

代码展示:

public class UserLogin {public static void main(String [] args) {String username = "hxf1688";String password = "2e5y8hxf";for(int i=0; i < 3; i++) {Scanner sc = new Scanner(System.in);      //创建sc为输入类System.out.println("请输入用户名:");String user = sc.nextLine();System.out.println("请输入密码:");String psw = sc.nextLine();if(username.equals(user)&&password.equals(psw)) {System.out.println("登录成功");break;}else {if(i==2) {System.out.println("您输入错误次数过多,请联系管理员");}else {System.out.println("输入失败,您还有"+(2-i)+"尝试机会");}}}}}

StringBuilder类

一、基本内容:  

StringBuilder 是一个可变的字符串类,我们可以把它看成是一个容器,这里的可变指的是 StringBuilder 对象中的内容是可变的

二、构造方法:

常用:

JAVA面对对象的应用方法

代码展示:

StringBuilder s1 = StringBuilder(hello);s2 = s1.append("world");(s1 == s2)    //

结果为true

StringBuilder类的其他知识点:

JAVA面对对象的应用方法

拓展知识

String、StringBuffer 和 StringBuilder 的区别:

String:字符串常量,字符串长度不可变。Java中String 是immutable(不可变)的。用于存放字符的数组被声明为final的,因此只能赋值一次,不可再更改。

StringBuffer:字符串变量(Synchronized,即线程安全)。如果要频繁对字符串内容进行修改,出于效率考虑最好使用

StringBuffer,如果想转成 String 类型,可以调用 StringBuffer 的 toString() 方法。Java.lang.StringBuffer 线程安全的可变字符序列。在任意时间点上它都包含某种特定的字符序列,但通过某些方法调用可以改变该序列的长度和内容。可将字符串缓冲区安全地用于多个线程。

StringBuilder:字符串变量(非线程安全)。在内部 StringBuilder 对象被当作是一个包含字符序列的变长数组。

基本原则 :

ArrayList

1.1ArrayList类概述

提供一种存储空间可变的存储模型,存储的数据容量可以发生改变

底层是数组实现的,长度可以变化

用于约束集合中存储元素的数据类型

1.2ArrayList类常用方法

构造方法 :

public ArrayList() : 创建一个空的集合对象

成员方法 :

JAVA面对对象的应用方法

关于成员方法的具体操作 :

JAVA面对对象的应用方法

代码展示:

import java.util.ArrayList;public class Arraylist1 {    public static void main(String[] args) {        ArrayList<String> al =new ArrayList<>();        al.add("ding");        al.add("yu");        al.add("meng");             //增加元素        al.add(3,"wo"); //增加指定索引元素        System.out.println(al.remove("wo")); // 删除元素        System.out.println(al.remove(2));//  删除指定索引元素        System.out.println(al.set(1,"sun"));//  修改指定索引元素        System.out.println(al.get(0)); // 返回指定索引处的元素        System.out.println(al.get(1));        System.out.println(al.size()); //集合长度        System.out.println(al);    }}

学生管理系统

案例需求 :

具体界面 :

JAVA面对对象的应用方法

实现步骤 :

定义学生类,包含以下成员变量 :

private String sid // 学生id

private String name // 学生姓名

private String age // 学生年龄

private String address // 学生所在地

学生管理系统主界面的搭建步骤 :

首先用输出语句完成主界面编写, 接着Scanner键盘输入, 然后switch语句完成选择的功能, 最后循环完成功能结束后回到主界面

具体代码:

import java.util.ArrayList;import java.util.Scanner;public class Studenttext {    public static void main(String[] args) {        boolean isFlag=true;        ArrayList<Student> s = new ArrayList<>();        while (isFlag) {            System.out.println("------欢迎来到远远学生管理软件------\n");            System.out.println("      1  添加学生");            System.out.println("      2  删除学生");            System.out.println("      3  修改学生");            System.out.println("      4  查看所有学生");            System.out.println("      5  退出");            System.out.println("      请输入你的选择: ");            char selection = Student.readMenuSelection();            switch (selection){                case '1':                    addStudent(s);                    break;                case '2':                    removeStudent(s);                    break;                case '3':                    setStudent(s);                    break;                case '4':                    findStudent(s);                    break;                case '5':                    System.out.print("确认是否退出(Y/N):");                    char isExit = Student.readConfirmSelection();                    if (isExit == 'Y') {                        isFlag = false;                        break;                    }            }        }    }

学生管理系统的添加学生功能实现步骤 :

定义一个方法,接收ArrayList集合 ,方法内完成添加学生的功能 : 最后调用添加学生方法

a.键盘录入学生信息

b.根据录入的信息创建学生对象

c.将学生对象添加到集合中

d.提示添加成功信息

学生管理系统的查看学生功能实现步骤 :

定义一个方法,接收ArrayList集合, 方法内遍历集合,将学生信息进行输出, 在查看所有学生选项里调用查看学生方法

具体代码:

public static void findStudent(ArrayList<Student> s) {        if (s.size()==0){            System.out.println("无数据,请先录入学生信息");            return;        }        System.out.println("学号\t\t姓名\t\t年龄\t\t居住地");        for (int i = 0; i < s.size() ; i++) {            Student a=s.get(i);            System.out.println(a.getSid()+"\t\t"+a.getName()+"\t\t"+a.getAge()+"岁\t"+a.getAddress());        }}

学生管理系统的删除学生功能实现步骤 :

定义一个方法,接收ArrayList集合, 方法中接收要删除学生的学号, 遍历集合,获取每个学生对象, 使用学生对象的学号和录入的要删除的学号进行比较,如果相同,则将当前学生对象从集合中删除,最后在删除学生选项里调用删除学生的方法

学生管理系统的修改学生功能实现步骤 :

定义一个方法,接收ArrayList集合, 方法中接收要修改学生的学号, 通过键盘录入学生对象所需的信息,并创建对象, 遍历集合,获取每一个学生对象。并和录入的修改学生学号进行比较.如果相同,则使用新学生对象替换当前学生对象, 在修改学生选项里调用修改学生的方法

具体代码:

 public static void setStudent(ArrayList<Student> s) {        Scanner sc = new Scanner(System.in);        System.out.println("请输入你要修改的学生学号:");        String sid = sc.nextLine();        int index = -1;        for (int i = 0; i < s.size(); i++) {            Student b = s.get(i);            if (b.getSid().equals(sid)) {                index = i;                break;            }        }        if (index == -1) {            System.out.println("你输入的学号不存在,请重新输入");        } else {            System.out.println("请输入学生新姓名");            String name = sc.nextLine();            System.out.println("请输入学生新年龄");            String age = sc.nextLine();            System.out.println("请输入学生新居住的");            String address = sc.nextLine();            Student a = new Student();            a.setSid(sid);            a.setName(name);            a.setAge(age);            a.setAddress(address);            for (int i = 0; i < s.size(); i++) {                Student b = s.get(i);                if (b.getSid().equals(sid)) {                    s.set(i, a);                    break;                }            }            System.out.println("修改成功");        }    }

退出系统

到此,关于“JAVA面对对象的应用方法”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯