我是
靠谱客的博主
冷酷钢笔,最近开发中收集的这篇文章主要介绍
第九章:常用类(二),觉得挺不错的,现在分享给大家,希望可以做个参考。
概述
-
String
String 继承了Object类,但重写了toString equals hashCode 方法。
-
StringBuffer/StringBuilder:
带有缓冲区的字符串。
和String的区别在于能重新赋值。
只能用append方法进行字符串的拼接,不能用“+”。
StringBuffer线程是安全的,但运行速度慢,StringBuilder的线程是不安全的,所以运行速度更快。
-
Math类:
Object的子类,包含各种数字运算的方法,有两个常量,底数E和圆周率PI。
-
包装类:
8种基本类型数据对应8种类:
byte:Byte。
int:Integer。
long:Long。
double:Double。
short:Short。
char:Character。
float:Float。
boolean:Boolean。
装箱/拆箱:
装箱:将一个基本类型转为对应的包装类的过程(系统自动完成)。
Integer ii=9;Integer ii=new Integer(i);
拆箱:将一个包装类的对象转换为对应的基本类型数据的数据。
int i=ii;
-
Date类:java.util包下。
Date类为时间类,精确到毫秒。
用Date()创建的对象是当前计算机的时间。
用Date(long time)构造器创建的对象是一个相对时间,参照时间是1970年1月1日0点0分0秒,转换成中国时间会晚8小时。
-
Calendar类:日历,万年历类。
Calendar类是一个抽象类,只能用实例化的子类 GregorianCalendar类。
setTime和gatTime用于Date和Calendar的相互转换。
-
判断闰年的方法: boolean isLeapYear(int year)
-
增加时间的方法: void add (int field,int x)
-
抽象时间格式化(按照一定的格转化时间)
DateFormat
SimpleDateFormat a=new SimpleDateFormat("yyyy年MM月dd日 hh:mm:ss E")
String xx=a.format(d);
年只能用y表示,同样:月M,日d,小时h,分钟m,秒s,星期E
parse
将一个指定格式的日期格式转换位Date对象。
作业1.
创建一个Student类,该有String类型的学号stuNo,String类型的姓名,要求将该类所有的成员变量进行封装,并且提供公共的getter和setter方法,重写equals方法,只要学生的学号相同即返回true,重写toString()方法,toString方法返回值类似”姓名:张三 学号:201301 ”
public class Student {
private String stuNo;
private String name;
public boolean equals(Object obj) {
Student st=(Student)obj;
boolean b=this.stuNo.equals(st.stuNo);
return b;
}
public String toString() {
return "姓名:"+name+" 学号:"+stuNo;
}
public String getStuNo() {
return stuNo;
}
public void setStuNo(String stuNo) {
this.stuNo = stuNo;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public static void main(String[] args) {
Student zhangsan=new Student();
zhangsan.setStuNo("15091135");
zhangsan.setName("张三");
Student li4=new Student();
li4.setName("li4");
li4.setStuNo("15091133");
System.out.println(li4.equals(zhangsan));
System.out.println(zhangsan.toString());
System.out.println(li4.toString());
}
}
作业2:
在注册时通常要验证用户名和密码是否合法,运用学习过的知识完成如下操作: 用户名长度大于等于6位,必须包含数字和英文字母密码长度大于等于8位,必须包含特殊符合_或者$,英文字母以及数字 以上两个条件同时成立注册才能成功
boolean isLetter(charch)字母
boolean isDigit(char ch)数字
import java.util.Scanner;
public class Registered {
public static void main(String[] args) {
boolean zzm = false, zsz = false, mzm = false, msz = false;
System.out.println("请输入您想用的用户名");
Scanner sc = new Scanner(System.in);
String id = sc.nextLine();
char[] a = id.toCharArray();
System.out.println("请输入您想用的密码");
Scanner sc2 = new Scanner(System.in);
String pswd = sc2.nextLine();
char[] b = pswd.toCharArray();
for (int i = 0; i < a.length; i++) {
zzm = Character.isLetter(a[i]);
if (zzm == true) {
break;
}
}
for (int i = 0; i < a.length; i++) {
zsz = Character.isDigit(a[i]);
if (zsz == true) {
break;
}
}
for (int i = 0; i < b.length; i++) {
mzm = Character.isLetter(b[i]);
if (mzm == true) {
break;
}
}
for (int i = 0; i < b.length; i++) {
msz = Character.isDigit(b[i]);
if (msz == true) {
break;
}
}
if(id.length()<6&&pswd.length()<8){
System.err.println("用户名长度大于等于6位,密码长度大于等于8位.");
}else if(zzm==true&&zsz==true&&mzm==true&&msz==true&&(pswd.indexOf("_")!=-1)|pswd.indexOf("$")!=-1){
System.out.println("恭喜,账号注册成功");
}else{
System.err.println("账号和密码必须包含数字和英文字母,密码必须包含特殊符合_或者$,英文字母以及数字 ");
}
}
}
最后
以上就是冷酷钢笔为你收集整理的第九章:常用类(二)的全部内容,希望文章能够帮你解决第九章:常用类(二)所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复