Java基础笔记I方法I封装I字符串I集合

方法

什么是方法

方法是程序中最小的执行单元

将重复的代码进行打包,将打包好的代码起个名字

好处:提高代码的复用性,可维护性

方法的定义和调用

最简单的方法
public static void 方法名(){
    方法体(就是打包起来的代码);
}
方法名();
带参数的方法

当方法的数据不明确时使用

public static void 方法名(参数类型 参数1,参数类型 参数2){
    方法体(就是打包起来的代码);
}
带返回值的方法
public static 返回值类型 方法名(参数类型 参数1,参数类型 参数2){
    方法体(就是打包起来的代码);
    return 返回值;
}

 方法的重载

在同一个类中,方法名相同,参数不同的方法,与返回值无关

参数不同:个数,类型,顺序

public static void sum(int a,double b){
    方法体(就是打包起来的代码);
}
public static void sum(int a,int b){
    方法体(就是打包起来的代码);
}

 引用数据类型的值传递,传递的是地址值

面向对象

学习获取已有对象并使用

如果没有就自己设计使用

类和对象

类(设计图):是对象共同特征的描述

对象:是真实存在的具体东西

如何定义类

public class 类名{
    成员变量(属性)
    成员方法(行为)
}
public class Phone{
    成员变量(属性)
    String brand;
    double price;
    成员方法(行为)
    public void call(){
    }
    public void playGame(){
    }

}

 如何得到类的对象

类名 对象名 = new 类名();

Phone p = new Phone();

访问属性:对象名.成员变量

访问行为:对象名.方法名()

封装

对象代表什么,就得封装对应的数据,并提供数据对应的行为

被private修饰的成员变量,如果需要被其他类使用,需要相应的操作

this的作用:区别成员变量和局部变量

        this.name就是成员变量

构造方法

作用:

  • 创造对象时,由虚拟机自动调用,给成员变量进行初始化
  • 对属性进行赋值

构造方法可以重载

修饰符 类名(参数){
方法体
}


public Student(){
}
public Student(String name,int age){
}

如果我们没有写构造方法,虚拟机会给我们加一个空参构造方法

javabean的标准形式
  1. 属性 
    1. 成员变量(属性)用private修饰
  2. 构造方法
    1. 无参
    2. 全参
  3. 成员方法
    1. 针对每一个私有化的成员变量,都需要提供get和set方法
    2. set方法给成员变量赋值
    3. get方法获取成员变量的值
  4. 其他行为(即其他方法)

 API

Application Programming Interface 应用程序编程接口

API是别人已经写好的东西,不需要自己编写,直接用就可以

字符串

//        字符数组创建字符串
        char[] chs={'a','b','c','d'};
        String s1=new String(chs);
        System.out.println(s1);//abcd
        
//        字节数组创建字符串
//        转化为ASCII码
        byte[] bytes={96,97,98,99,100};
        String s2=new String(bytes);
        System.out.println(s2);//`abcd

==号比较的是什么

  • 基本类型比的是数据值
  • 引用类型比的是地址值

字符串的比较

boolean equals方法(要比较的字符串)     要完全一样
boolean equalsIgnoreCase方法(要比较的字符串)忽略大小写的比较

StringBuilder

可以看成是一个容器,创建之后里面的内容是可变的

作用:提高字符串的操作效率

StringBuilder构造方法

  1. append()方法---使用append()方法可实现字符串的拼接操作,返回拼接后的StringBuilder对象。
  2. reverse()方法---使用reverse()方法可实现StringBuilder字符串的反转操作。
  3. length()方法---返回长度(字符出现的个数)
  4. toString()方法---通过toString()就可以实现把StringBuilder转换为String
StringBuilder sb = new StringBuilder("hello");
sb.append("world");
sb.delete(5,8);  //删除索引范围为[5,8)内的所有内容,即从w开始删除到l之前
System.out.println(sb);  //输出hellold

 链式编程

//        链式编程
//        在调用一个方法的时候,不需要用变量接收他的结果,可以继续调用其他方法
        int len=getString().substring(1).replace("A","Q").length();
    

    public static String getString() {
        Scanner sc= new Scanner(System.in);
        System.out.println("请输入一个字符串");
        String str=sc.next();
        return str;
    }

演示案列

public class StringBuilderDemo {
    public static void main(String[] args) {
//        创建对象
        StringBuilder sb=new StringBuilder();
//        添加字符串
        sb.append("aaa").append("bbb").append("ccc");
//        打印
        System.out.println(sb);
//        把StringBuilder变回字符串
        String str =sb.toString();
        System.out.println(str);
    }
}

综合案列---对称字符串

import java.util.Scanner;

public class StringBuilderDemo1 {
    public static void main(String[] args) {
        //    键盘接受一个字符串,判断出该字符串是否是对称字符串,打印出是或者不是
//    1.键盘输入一个字符串
        Scanner sc=new Scanner(System.in);
//    StringBuilder inputStr=new StringBuilder();
        System.out.println("请输入一串字符串");
        String inputStr= sc.next();
//    2.将字符串反转
        StringBuilder reserveStr=new StringBuilder();
        reserveStr.append(inputStr);
        reserveStr.reverse();
        System.out.println(reserveStr);
//        通过toString()就可以实现把StringBuilder转换为String
        String result = reserveStr.toString();
//        这里可以链式编程
        String result1=new StringBuilder().append(inputStr).reverse().toString();
//    3.判断是否相同
//        equals方法(要比较的字符串) 要完全一样
        if (inputStr.equals(result)){
            System.out.println("是");
        }
        else
            System.out.println("不是");
    }
}

StringJoiner

跟StringBuilder一样,可以看成一种容器,内容可以变化

构造方法

方法名说明
public StringJoiner(间隔符号)创建一个StringJoiner对象,指定拼接时的间隔符号
public StringJoiner(间隔符号,开始符号,结束符号)创建一个StringJoiner对象,指定拼接时的间隔符号,开始符号,结束符号

成员方法

方法名说明
add添加数据,并返回对象本身
length返回长度(字符出现的个数)
toString返回一个字符串(该字符串就是拼接之后的结果)
//        创建一个对象
        StringJoiner sj=new StringJoiner("---");
//        添加元素
        sj.add("aaa").add("bbb").add("ccc");
//        打印结果
        System.out.println(sj);

集合

集合和数组的特点

数组(长度固定)集合(长度可变)
可存储基本类型不可存储基本类型,需要包装--->包装类
可存储引用类型可存储引用类型

 创建集合

ArrayList<String> list = new ArrayList<String>();

集合的方法

方法作用
add添加
remove删除
set修改
get查询
size长度
public class ArrayListDemo1 {
    public static void main(String[] args) {
        ArrayList<String> list = new ArrayList<String>();
//        1.添加
        list.add("aaaa");
        list.add("aaaa");
        list.add("bbbb");
        list.add("dddd");
//        System.out.println(list);
//        2.删除
        list.remove("aaaa");
        String str=list.remove(0);
        System.out.println(str);//aaaa返回的是被删除的内容

//        3.修改
        list.set(0,"gggg");
        System.out.println(list);
//        4.查询
        String str1=list.get(0);
        System.out.println(str1);//[gggg, dddd]  gggg
//        5.长度  可遍历
        for (int i = 0; i < list.size(); i++) {
            String result=list.get(i);
            System.out.println(result);
        }
    }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值