第四周课程总结

第四周课程总结


本周重点为学习String;首先String用以创建字符串,且通过有一次课堂练习加强理解到:String 类是不可改变的,一旦创建了 String 对象,那它的值就无法改变了;再是;用于获取有关对象的信息;
1、 String的两种运用:
a、直接赋值给对象String定义的对象;
b、新建栈内存并赋值给与对象;
2、String 类有很多实用的方法,有些算法直接使用可以简化代码,方便操作; 例: 1 char charAt(int index)
返回指定索引处的 char 值。
2 int compareTo(Object o)
把这个字符串和另一个对象比较。
3 int compareTo(String anotherString)
按字典顺序比较两个字符串。
4 int compareToIgnoreCase(String str)
按字典顺序比较两个字符串,不考虑大小写。
5 String concat(String str)
将指定字符串连接到此字符串的结尾。
6 boolean contentEquals(StringBuffer sb)
当且仅当字符串与指定的StringBuffer有相同顺序的字符时候返回真。
7 static String copyValueOf(char[] data)
返回指定数组中表示该字符序列的 String。
8 static String copyValueOf(char[] data, int offset, int count)
返回指定数组中表示该字符序列的 String。
9 boolean endsWith(String suffix)
测试此字符串是否以指定的后缀结束。
10 boolean equals(Object anObject)
将此字符串与指定的对象比较。
11 boolean equalsIgnoreCase(String anotherString)
将此 String 与另一个 String 比较,不考虑大小写。
12 byte[] getBytes()
使用平台的默认字符集将此 String 编码为 byte 序列,并将结果存储到一个新的 byte 数组中。
13 byte[] getBytes(String charsetName)
使用指定的字符集将此 String 编码为 byte 序列,并将结果存储到一个新的 byte 数组中。
14 void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin)
将字符从此字符串复制到目标字符数组。
15 int hashCode()
返回此字符串的哈希码。
16 int indexOf(int ch)
返回指定字符在此字符串中第一次出现处的索引。
17 int indexOf(int ch, int fromIndex)
返回在此字符串中第一次出现指定字符处的索引,从指定的索引开始搜索。
18 int indexOf(String str)
返回指定子字符串在此字符串中第一次出现处的索引。
19 int indexOf(String str, int fromIndex)
返回指定子字符串在此字符串中第一次出现处的索引,从指定的索引开始。
20 String intern()
返回字符串对象的规范化表示形式。
21 int lastIndexOf(int ch)
返回指定字符在此字符串中最后一次出现处的索引。

								  实验二 Java简单类与对象

一、 实验目的

1. 掌握类的定义,熟悉属性、构造函数、方法的作用,掌握用类作为类型声明变量和方法返回值;
2. 理解类和对象的区别,掌握构造函数的使用,熟悉通过对象名引用实例的方法和属性;
3. 理解static修饰付对类、类成员变量及类方法的影响。

二、 实验内容

1. 写一个名为Rectangle的类表示矩形。其属性包括宽width、高height和颜色color,width和height都是double型的,而color则是String类型的。要求该类具有:
(1) 使用构造函数完成各属性的初始赋值 (2) 使用get…()和set…()的形式完成属性的访问及修改 (3) 提供计算面积的getArea()方法和计算周长的getLength()方法
实验过程:

实验代码:

Rectangle类:
public class Rectangle
{
private double width;
private double height;
private String color;
public Rectangle(double width,double height,String color)
{
this.setWidth(width);
this.setHeight(height);
this.setColor(color);
} public double getWidth()
{
return width;
}
public double getHeight()
{
return height;
}
public String getColor()
{
return color;
} public void setWidth(double width)
{
this.width = width;
}
public void setHeight(double height)
{
this.height = height;
}
public void setColor(String color)
{
this.color = color;
} public double Area()
{
return width*height;
}
public double Perimeter()
{
return 2*(width+height);
}
}
主类:
public class Juxing
{ public static void main(String[] args)
{
Rectangle at = null;
at =new Rectangle(100,360,"purple"); System.out.println("宽width: "+at.getWidth());
System.out.println("高height: "+at.getHeight());
System.out.println("颜色color: "+at.getColor());
System.out.println("面积area: "+at.Area());
System.out.println("周长perimeter:"+at.Perimeter());
} }

实验截图:

以宽:100;高:360;颜色:紫色为例:

2. 银行的账户记录Account有账户的唯一性标识(11个长度的字符和数字的组合),用户的姓名,开户日期,账户密码(六位的数字,可以用0开头),当前的余额。银行规定新开一个账户时,银行方面提供一个标识符、账户初始密码123456,客户提供姓名,开户时客户可以直接存入一笔初始账户金额,不提供时初始余额为0。定义该类,并要求该类提供如下方法:存款、取款、变更密码、可以分别查询账户的标识、姓名、开户日期、当前余额等信息。
实验过程:
题目分析:要求建立一个类,能用以实现查询账户信息、存款、取款、变更密码等自由操作;

实验代码:

题目实现的类:
package yinghang;
import java.util.Scanner; public class Account
{
public String id;
public int password;
public String name;
public int money;
public String time="2012/08/21 星期天"; public Account(String id, int password, String name, int money)
{
this.id = id;
this.password = password;
this.name = name;
this.money = money;
this.time = time;
} public void show()
{
System.out.println("账户标识:" + id);
System.out.println("姓名: " + name);
System.out.println("开户日期:"+time);
System.out.println("余额: " + money);
} public void takeMoney()
{
while(true)
{
Scanner sc = new Scanner(System.in);
System.out.println("您好,请输入密码进行验证!");
int pass = sc.nextInt();
if(pass == password)
{
System.out.println("请输入需要取款的金额:");
int adds = sc.nextInt();
if(adds <= money)
{
money= money-adds;
System.out.println("本次取款为: " + adds);
System.out.println("账户余额为:" + money);
}
else
System.out.println("操作失败,您当前余额不足" );
break;
} else
System.out.println("您输入的密码有误,请重新输入!");
}
} public void saveMoney(int moneys)
{
money = money+moneys;
System.out.println("本次存款为: " + moneys);
System.out.println("账户余额为:" + money);
} public void key()
{
System.out.println("设置新密码:"); Scanner sxc=new Scanner(System.in);
int password1=sxc.nextInt();
System.out.println("请再次输入:");
int password2=sxc.nextInt();
if(password1!=password2)
{
System.out.println("您两次输入密码不同!");
while(true)
{
System.out.println("请再次输入:");
int password3=sxc.nextInt();
if(password1==password3)
{
System.out.println("操作成功");
break;
}
}
}
else
System.out.println("操作成功"); }
}
主类:
package yinghang;
import java.util.Scanner; public class SSS
{ public static void main(String[] args)
{
Account x = new Account("sss393645216",123456,"鹏",666666666); Scanner sx = new Scanner(System.in);
System.out.println("请输入需要执行的操作");
System.out.println("***1、银行账户信息***");
System.out.println("***2、取款操作*******");
System.out.println("***3、存款操作*******");
System.out.println("***4、修改密码*******");
System.out.println("***5、退出系统*******"); while(true)
{
int s = sx.nextInt();
int i=0;
switch(s)
{
case 1:
System.out.println("***银行账户信息***");
x.show();
break;
case 2:
System.out.println("***取款操作******");
x.takeMoney();
break;
case 3:
System.out.println("***存款操作******");
x.saveMoney(1000);
break;
case 4:
System.out.println("***修改密码******");
x.key();
break;
case 5:
System.out.println("感谢您的使用!");
System.exit(0);
i=1; break;
default:i=1;break;
}
if(i==1)
break;
} }
}

三、 总结:

第一题总体内容要求较为简单,只是两题都是代码量有些大,其中语法还不太熟练,好在逻辑能理清编写;第二题,一点难在题目要求有些模糊,二是设计量相对较大且复杂,还容易出错,嗯,总体上来说掌握的知识还好。

第四周课程总结&实验报告二的更多相关文章

  1. 第四周课程总结&实验报告(二)

    Java实验报告(二) 实验二 Java简单类与对象 一. 实验目的 (1) 掌握类的定义,熟悉属性.构造函数.方法的作用,掌握用类作为类型声明变量和方法返回值: (2) 理解类和对象的区别,掌握构造 ...

  2. 第十四周课程总结 & 实验报告

    一.JDBC JDBC概述 JDBC提供了一种与平台无关的用于执行SQL语句的标准JavaAPI,可以方便的实现多种关系型数据库的统一操作,它由一组用Java语言编写的类和接口组成 JDBC的主要操作 ...

  3. 第四周课程总结&实验报告

    实验报告 1.写一个名为Rectangle的类表示矩形. 其属性包括宽width.高height和颜色color,width和height都是double型的,而color则是String类型的.要求 ...

  4. 第十四周课程总结&实验报告

    简单记事本的实现 实验源码 主类 package test1; import javax.swing.JFrame; import javax.swing.JTextArea; public clas ...

  5. 第十四周课程总结&实验报告(简单记事本的实现)

    1.JDBC概述 JDBC提供了一种与平台无关的用于执行SQL语句的标准JavaAPI,可以方便的实现多种关系型数据库的统一操作,它由一组用Java语言编写的类和接口组成 主要常用操作类与接口: ja ...

  6. 第四周总结&实验报告二

    第四周总结&实验报告二 课程总结 这周我们学习了string类,以及很多string类的很多操作方法,同时string也是一个对象,在用到它时我们首字母需要大写,这周我们还加深了对函数构造的理 ...

  7. 20145221 《Java程序设计》实验报告二:Java面向对象程序设计

    20145221 <Java程序设计>实验报告二:Java面向对象程序设计 实验要求 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O. ...

  8. Java实验报告二:Java面向对象程序设计

    Java实验报告二:Java面向对象程序设计                                                                               ...

  9. 20145203盖泽双:Java实验报告二

    Java实验报告二:Java面向对象程序设计 实验要求: 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O.L.I.D原则 了解设计模式 实验内容 ...

随机推荐

  1. k8s权威指南-从xx到oo的实践全接触

    基本概念与术语 集群的2种管理角色:master和node master 集群的控制节点,负责整个集群的管理与控制,运行着关键进程: 1,k8s api server: 提供了HTTP Rest 接口 ...

  2. The 2018 ACM-ICPC Asia Qingdao Regional Contest, Online(2018 青岛网络预选赛)

    A题 A Live Love 原题链接:https://pintia.cn/problem-sets/1036903825309761536/problems/1041155943483625472 ...

  3. 『NOIP 2019Day2 T3』 保卫王国(defense)

    重温NOIP2018的试题,发现只要好好想想还是能想出一些东西的. 比如说本题是一个DDP的模板题,硬是做成了倍增优化DP的题目. 对于给出的$n$个节点的树,每个点都有点权$v_i$,共$Q$次询问 ...

  4. vue子路由设置、全局组件、局部组件的原生写法

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. vue中全局组件与局部组件的注册,以及动态绑定props值

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  6. MySQL的安装教程

    一.MYSQL的安装 首先登入官网下载mysql的安装包,官网地址:https://dev.mysql.com/downloads/mysql/ 一般下载这个就好,现在的最新版本是5.8,但是据说已经 ...

  7. python-获取程序的路径

    python获取当前路径 import os,sys 使用sys.path[0].sys.argv[0].os.getcwd().os.path.abspath(file).os.path.realp ...

  8. Marked

    哈夫曼树 2-sat问题 线性代数基础 矩阵和行列式基础 可并堆1 可并堆2 概率与期望概念 Kruskcl重构树1 Kruskcl重构树2 匈牙利算法 带权并查集 C++参考手册 尺取法 AC自动机 ...

  9. IDEA无法通过类加载器获取resources文件夹配置文件解决办法

    问题描述:如果IDEA无法通过类加载器获取resources文件夹配置文件,一定是Classpath编译文件没有导致的. 1.在通过配置文件来获取文件信息时,在resouces文件中放入了filena ...

  10. Java-synchronized 中锁的状态及其转换

    synchronized 锁的优化过程:无锁 -> 偏向锁 -> 轻量级锁 -> 重量级锁 一.不同锁对象的状态表示(需要了解 Java 对象头) https://wiki.open ...