目录
1.String常用方法
注意:常量池在1.7之后放置在了堆空间之中
字符串的使用
1、创建
String str="abc";
String str2=new String("abc")
两种方式都可以用,只不过第一种使用比较多
2、字符串的本质
字符串的本质是字符数组或者叫做字符序列
String类使用final修饰,不可以被继承
使用equals方法比较的是字符数组的每一个位置的值
String是一个不可变对象
String 常用方法
public class StringDemo {
public static void main(String[] args) {
String str1="abc";
String str2=new String ("abc");
// str2 =str2.intern();
System.out.println(str1==str2);
System.out.println(str1.equals(str2));
System.out.println(str1.charAt(0));
//第一个位置的字符
System.out.println(str1.concat("0123"));
//字符串拼接
System.out.println(str1.indexOf("c"));
//2的位置
String str3="abcdefg";
System.out.println(str3.substring(2));
//从第二的位置对字符串进行截取
System.out.println(str3.substring(2,6));
//截头截尾
System.out.println("***********");
// String str1="abc";
// String str2=new String("abc");
// str2=str2.intern();
// 返回字符串对象的规范表示。从而进行比较 若相等为true
// System.out.println(str1==str2);
// System.out.println(str1.isEmpty());
// length为0是返回为true
}
}
2.IntegerDemo包装类与基本数据类型
* 包装类是将基本数据类型封装成一个类,包含属性和方法
* 使用:
* 在使用过程中,会涉及到自动装箱和自动拆箱(装箱把int转化为Integer,拆箱是把Integer,转化为int)
* 装箱:将基本数据类型转换成包装类
* 拆箱:将包装类转换成基本数据类型
Integer方法
public class IntegerDemo {
public static void main(String[] args) {
int a=10;
// Integer i1= Integer.valueOf(a);//装
// Integer i=new Integer(10);//拆
// int a1=i.intValue();//装
// System.out.println(a==i);//拆
// Integer i1=100;
// Integer i2=100;
// Integer i3=200;
// Integer i4=200;
// System.out.println(i1==i2);
// System.out.println(i3==i4);
// Double d1=1.0;
// Double d2=1.0;
// Double d3=2.0;
// Double d4=2.0;
// System.out.println(d1==d2);
// System.out.println(d3==d4);
//字符串转化为Integer
String s="123";
Integer i=new Integer(s);
Integer i1=Integer.parseInt(s);
Integer i2=Integer.valueOf(s);
//将Integer类型转化为字符串类型
Integer integer1=10;
System.out.println(integer1.toString()+1);
String s1=String.valueOf(integer1);
System.out.println(s1+1);
String s2=integer1+"";
System.out.println(s2+1);
}
}
请定义一个交通工具(Vehicle)的类其中有: 属性: 速度(speed)、 体积(size)等, 方法:移动(move())、设置速度(setSpeed(int speed))、加速 speedUp()、减速 speedDown()等。 最后在测试类 Vehicle 中的 main()中实例化一个交通工具对象并通过方法给它初始化 speed,size 的值并且通过打印出来。 另外调用加速、减速的方法对速度进行改变
包 1
public class VehicleWork {
private int speed;
private int size;
public VehicleWork() {
}
public VehicleWork(int speed, int size) {
this.speed = speed;
this.size = size;
}
public int getSpeed() {
return speed;
}
public void setSpeed(int speed) {
this.speed = speed;
}
public int getSize() {
return size;
}
public void setSize(int size) {
this.size = size;
}
public void move(){
System.out.println("开始移动");
}
public void speedUp(){
System.out.println("正在加速中");
speed+=10;
System.out.println("加速完毕目前速度为"+getSpeed());
}
public void speedDown(){
System.out.println("正在减速中");
speed-=5;
System.out.println("减速完毕目前速度为"+getSpeed());
}
}
包 2
public class VehicleWorkTest {
public static void main(String[] args) {
VehicleWork vehicleWork=new VehicleWork();
vehicleWork.setSpeed(150);
vehicleWork.setSize(50);
System.out.println("速度为:"+vehicleWork.getSpeed()+"体积"+vehicleWork.getSize());
vehicleWork.move();
vehicleWork.speedUp();
vehicleWork.speedDown();
}
}
3. Dater日期类
package day05.class1常用类.date日期类;/*
@Auther:kongshan
@Date:2022/4/29-04-29-17:33
@Description:IntelliJ IDEA
@version:
*/
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
public class DateDemo {
public static void main(String[] args) throws ParseException {
//日期类
Date date=new Date();
System.out.println(date);
System.out.println(date.getTime());
// 返回自1970年1月1日以来,由此 Date对象表示的00:00:00 GMT的毫秒数 。
System.out.println(date.getYear());
//日期格式化类
DateFormat dateFormat=new SimpleDateFormat("yyy-MM-dd HH:mm:ss");
String format=dateFormat.format(date);
System.out.println(format);
String newDate="2008-08-08 08:08:08";
Date parse=dateFormat.parse(newDate);
System.out.println(parse);
//日历类
Calendar calendar=new GregorianCalendar();
System.out.println(calendar.getTime());
calendar.setTime(parse);
System.out.println(calendar.get(calendar.YEAR));
System.out.println(calendar.get(calendar.MONTH)+1);
System.out.println(calendar.get(calendar.DAY_OF_MONTH));
System.out.println(calendar.get(calendar.HOUR_OF_DAY));
System.out.println(calendar.get(calendar.MINUTE));
System.out.println(calendar.get(calendar.SECOND));
}
}
4.构造方法与重载:
定义一个网络用户类,要处理的信息有用户 ID、用户密码、 email 地址。
在建立类的实例时把以上三个信息都作为构造函数的参数输入,
其中用户 ID 和用户密码存在时,email缺省时 ,email地址是用户 ID 加上字符串"@gameschool.com"。
public class NetUser {
private String ID;
private String password;
private String email;
public NetUser(String ID, String password, String email) {
this.ID = ID;
this.password = password;
this.email = email;
}
public NetUser(String ID, String password) {
this.ID = ID;
this.password = password;
}
public void checkEmail(){
if (this.email!=null){
this.email=email;
}else{
this.email=this.ID+"@gameschool.com";
}
}
@Override
public String toString() {
return "NetUser{" +
"ID='" + ID + '\'' +
", password='" + password + '\'' +
", email='" + email + '\'' +
'}';
}
public static void main(String[] args) {
NetUser netUser=new NetUser("1000","6666666","ilovejava@sina.com");
netUser.checkEmail();
System.out.println(netUser);
System.out.println("*****************");
NetUser netUser1=new NetUser("10002","8888888");
netUser1.checkEmail();
System.out.println(netUser1);
}
}
2. 编写 Java 程序用于显示人的姓名和年龄。 定义一个人类Person。 该类中应该有两个私有属性: 姓名 (name) 和年龄 (age) 。 定义构造方法用来初始化数据成员。再定义显示(display()) 方法将姓名和年龄打印出来。 在main 方法中创建人类的实例然后将信息显示。
public class Person {
private String name;
private int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
public void display(){
System.out.println("姓名"+this.name+",年龄:"+this.age);
}
public static void main(String[] args) {
Person person=new Person("小白",22);
person.display();
}
}