lyt0612

导航

2022-07-20 第二组 刘禹彤 学习笔记

打卡第11天

今天继续学习面向对象

 

 

###学习内容

1.String字符串

  • String是一个类
  • 类中可以有哪些结构?

1.属性

2.方法

3.构造器

  • String一旦声明,不可改变

2.虚地址

对象在内存中的存储位置

3.String赋值

  1. =赋值,无论怎么比较,都是true
  2. new赋值,用双等号比较,都是false

4.比较字符串的内容

equals方法:

1.需要传参,传String类型的参数

2.有返回值,Boolean类型3.访问权限public

length方法:

1.不需要传参

2.有返回值,整型int

3.访问权限public

面试题:字符串获取长度的方法和数组获取长度的方法有什么区别? 数组的length是属性,字符串的length()是方法

下标(索引)

indexOf(String,int)

  • 判断指定字符是否存在,返回值为字符串在s1的下标

1.如果不存在,返回-1

2.返回从左到右第一个匹配的下标

  • indexOf(String,int)代表从int位置开始查找,包括当前位置

5.字符串的截取

str.substring(beginIndex,endIndex):如果传一个参数,从指定位置开始截取,直到字符串的末尾

包括起始位置的字符,不包含终止位置

生成一个新的字符串,不会改变原有数据

6.返回新的字符串

  1. 转大写:System.out.println(str.toUpperCase())
  2. 转小写:System.out.println(str.toLowerCase())
  3. 判断是否以xxx开头,toffset:偏移量:System.out.println(str.startsWith())
  4. 判断是否以xxx结尾System.out.println(str.endsWith())
  5. 忽略大小写,比较内容:System.out.println(str.equalsIgnoreCase())
  6. 去掉字符串前后的空格:System.out.println(str1.trim())
  7. 根据指定的字符分割,分割之后,分隔条件消失:String [] strings = str2.split()

字符串替换: System.out.println(str.replace)

7.包装器类型(包装类,封装类)

  • 八种数据类型: byte--Byte

short--Short

int--Integer

long--Long

float--Float

double--Double

char--Character

boolean--Boolean

  • 原理: 1、自动装箱:把int类型包装成了包装器OInteger类型

基本数据类型转换成对应的包装器类型

2、自动拆箱:把Integer类型转换成int类型

包装器类型转换成基本数据类型

笔试题: JDK5之后的新功能:1.自动装箱和自动拆箱2.增强for循环(foreach)3.枚举JDK7以后的新功能:switch...case可以用string

8.异常

1.数组下标越界

2.内存溢出

3.空指针

4.字符串下标越界

5.数字格式化

###学习心得:

今天主要学习了String字符串和将昨天员工系统案例进行了完成,通过几天的学习,对面向对象逐渐理解了,但是运用还是不够熟练,看到案例有思路但是不太会写,还是要继续努力学习

###掌握程度;理解

###相关练习

 

package a;

import java.util.Scanner;

public class Ch06_Demo {

    public String getGender(String cardId){
        String gender = "";
        int genderNum =cardId.charAt(16);
        if(genderNum % 2 == 0){
            gender = "";
        }
        return gender;
    }

    public String getBirthday(String cardId) {
        return cardId.substring(6, 14);
    }

    public static void main(String[] args) {
//        char c = '7';
// char直接转int,奇偶不变
//        int i = c;
//        System.out.println(i);
        Ch06_Demo c = new Ch06_Demo();
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入身份证号:");
        String cardId = sc.next();
        if(cardId.length() == 18) {
//            String birthday = c.getBirthday(cardId);
//            String gender = c.getGender(cardId);
//            String birthday = cardId.substring(6,14);
//            String gender = "男";
//            int genderNum =cardId.charAt(16);
//            if(genderNum % 2 == 0){
//                gender = "女";
//            }
            System.out.println("身份证号为:" + cardId + ",生日:"
                    + c.getBirthday(cardId) + ",性别:" + c.getGender(cardId));
        }else{
            System.out.println("输入有误,请重新输入!");
        }
    }
}

 

代码结果:

 

posted on 2022-07-20 20:22  小仙女吖~  阅读(41)  评论(0)    收藏  举报