zoukankan      html  css  js  c++  java
  • 第四周总结 and 实验二

    一、课堂笔记总览
     
     

    1.String类两种实例方法
    区别
    String str1 = "hello";
    String str2 = "hello";
    String str3 = new String("hello");
    System.out.println(str1 == str2);
    System.out.println(str1 == str3);
    output:
        true
        false
     
     
    String str1 = “hello”;会将字符串数据放入对象池,下次再实例化该对象时可以直接使用
    用new进行实例化,该字符串常量不会保存到对象池(可以使用intern()操作入池),另外还会产生额外垃圾空间,不建议使用。
     
     
     

    StringBuffer类
    String类是字符串常量,是不可更改的常量。而StringBuffer是字符串变量,它的对象是可以扩充和修改的。
     
     
     
     
    newString  
    凡是new 的都在在堆中开辟内存的
    rt 你定义的是一个静态一维数组 里面是空的(因为你带了{ } 号)
    不过也有内存 他的内存空间是在堆中的
    String str[ ] = new String[10]; 像这样 是一个 动态的
    它在堆中开辟了10 个空间 且他们的地址是连续的 空间大小都是一致的
     

    String类操作例(查找单个字符
    在String中使用indexOf()方法,可以返回指定的字符串的位置,如果不存在则返回-1.
    public class StringAPIDemo05{
    public  static void main(String[]args){
        String str1 ="abcdefgsjh";
          System.out.println(str1.indexOf("c"));
        System.out.println(str1.indexOf("c",3));
         System.out.println(str1.indexOf("x"));
    }
    }
     
     
    程序输出结果
    2
    -1            //没有查到
    -1
     
     
     
     
    foreach操作
    oreach 并不是 Java 中的关键字,是 for 语句的特殊简化版本,在遍历数组、集合时, foreach 更简单便捷。从英文字面意思理解 foreach 也就是“ for 每一个”的意思,当使用foreach循环基本类型时变量时不能修改集合中的元素的值,遍历对象时可以修改对象的属性的值,但是不能修改对象的引用
    修改基本类型的值(原集合中的值没有变化,因为str是集合中变量的一个副本)
     
     
     
     
    String类操作例(查找字符串indexOf()函数
    在String中使用indexOf()方法,可以返回指定的字符串的位置,如果不存在则返回-1.
    public class StringAPIDemo05{
    public  static void main(String[]args){
        String str 1 ="abcdefgsjh";
          System.out.println(str1.indexof("c"));
        System.out.println(str1.indexof("c",3));
         System.out.println(str1.indexof("x"));
    }
    }
     
     
     

    String类操作例(split切割字符串操作)

    String str="This is a test of Java" ;
    int count=0;
    String[] s=str .split("");
    for(String e:s){
         if(e.equals("is")){
                count++ ;
         } 
    }
    System.out.printIn(count);
     
     
     
     
     
    使用replace删除字符串
    public class Test{
     public static void mian(String[]args){
    String str ="This is a test of java";
    str=str.replace("  test", "");
    System.out.println(str);
    }
    }

    • 实验目的
    • 掌握类的定义,熟悉属性、构造函数、方法的作用,掌握用类作为类型声明变量和方法返回值;
    • 理解类和对象的区别,掌握构造函数的使用,熟悉通过对象名引用实例的方法和属性;
    • 理解static修饰付对类、类成员变量及类方法的影响。
    • 实验内容
    1. 写一个名为Rectangle的类表示矩形。其属性包括宽width、高height和颜色color,width和height都是double型的,而color则是String类型的。要求该类具有:

    (1) 使用构造函数完成各属性的初始赋值

    (2) 使用get…()和set…()的形式完成属性的访问及修改

    (3) 提供计算面积的getArea()方法和计算周长的getLength()方法

    额等信息。

    1.实验源码

    package Rextangle;
    public class Rextangle { private String color;                                                                                                                                    书5.13 构造方法重载
    private double width;                              //private封装属性 width
    private double height;                            //private封装属性  height
    public void setColor(String color) {
        this.color=color;                                   //this调用本类属性color
    }
    public void setWidth(double width) {                        //定义构造方法为width赋值
        this.width=width;
    }
    public void setHeight(double height)  {              //定义构造方法为height赋值
        this.height=height;
    }
    public String getColor() {                            //取得color
        return color;
    }
    public double getWidth() {                      //取得 width
        return width;
    }
    public double getHeight() {                             //取得高
        return height;
    }
    public  double getArea() {                       //取得面积
        return width*height;
    }
    public double getLength() {
        return 2*(width+height);   
    }
        public static void main(String args[]) {
            Rextangle r=new Rextangle();                                       //我们调用一个参数的构造
            r.setWidth(30);                                                    //s输入Rextangle矩形的宽
            r.setHeight(22);                                             //s输入Rextangle矩形的高
            System.out.println(r.getArea());
            System.out.println(r.getLength());                      输出周长getLength
            }
    }
     
    实验
    结果
     
     
    1. 银行的账户记录Account有账户的唯一性标识(11个长度的字符和数字的组合),用户的姓名,开户日期,账户密码(六位的数字,可以用0开头),当前的余额。银行规定新开一个账户时,银行方面提供一个标识符、账户初始密码123456,客户提供姓名,开户时客户可以直接存入一笔初始账户金额,不提供时初始余额为0。定义该类,并要求该类提供如下方法:存款、取款、变更密码、可以分别查询账户的标识、姓名、开户日期、当前余额等信息。
  • 相关阅读:
    中介者模式(Mediator Pattern)
    状态模式
    命令模式(Command Pattern)
    迭代器模式(Iterator Pattern)
    解释器模式
    备忘录模式
    访问者模式(Visitor Patten)
    责任链模式(chainOfResponsibility)
    .net下安装 ZooKeeper.Net
    Zookeeper .Net客户端代码
  • 原文地址:https://www.cnblogs.com/songjiah/p/11536134.html
Copyright © 2011-2022 走看看