java基础API

java基础APIJava常用类库1.API(1)ApplicationProgrammingInterface,应用程序接口。是一些预先定义的类和接口,或指软件系统不同组成部分衔接的约定。(2)API说明文档API文档查看方式:第一步选择包,第二步,选择类或接口,第三步查看类和接口的使用说明,右边的区域。右边的区域分为五块,分别为类的定义和功能介绍、属性的介绍、构造器的介绍、构造器的介绍、方法的列表、每个方法的使用详细说明。2、java.lang包(1)这是我们api中最基础的一个包(2)该包下面的

大家好,又见面了,我是你们的朋友全栈君。

Java常用类库

1.API

(1)Application Programming Interface,应用程序接口。
是一些预先定义的类和接口,或指软件系统不同组成部分衔接的约定。
(2)API说明文档
在这里插入图片描述

API文档查看方式:第一步选择包,第二步,选择类或接口,第三步查看类和接口的使用说明,右边的区域。
右边的区域分为五块,分别为类的定义和功能介绍、属性的介绍、构造器的介绍、构造器的介绍、方法的列表、每个方法的使用详细说明。

2、java.lang包

(1)这是我们api中最基础的一个包
(2)该包下面的类可以直接使用,无需导入
(3)常用的类
Object、String、StringBuffer、StringBuilder、Math、System、8个包装类、Thread、Runnable接口

3、java.lang.Object

(1)Object是所有类的父类,我们一般称呼其为超类、基类、根类。也就是说所有类直接或间接继承了Object类。
如果一个类没有继承任何类,那么系统会让他继承Object。
如果一个类没有继承任何类,那么系统会让它继承Object。
例如我们建立一个新的Student类,在建一个TestObject类来进行测试
Student类

package com.guo.demo;

public class Student {
	private String name;
	public void setName(String name) {
		this.name = name;
	}
	public String getName() {
		return name;
	}
	public void study() {
		System.out.println("学生在学习!");
	}
}

TestObject类

package com.guo.demo;

public class TestObject {
	public static void main(String[] args) {
		Student s=new Student();
		s.study();
		s.toString();
	}
}

使用Student对象时我们可以看到他除了本身的study()方法,还有许多继承的Object类的方法。
在这里插入图片描述

(2)Object常用方法

int hashCode() 返回对象的哈希码值。 String toString() 返回对象的字符串表示形式。
boolean equals(Object obj) 指示一些其他对象是否等于此。

案例

package com.guo.demo;
public class TestObject {
	public static void main(String[] args) {
		Object  o1=new  Object();
		Object  o2=new  Object();
		
//		获取对象的哈希码值
		int  i=o1.hashCode();
		System.out.println(i);
		int  i2=o2.hashCode();
		System.out.println(i2);
		
//		返回对象的字符串表示:包名.类名@16进制的哈希码值
		String  s1=o1.toString();
		String  s2=o2.toString();
		System.out.println(s1);
		System.out.println(s2);
		
//		比较两个对象是否相等。
//		比较规则:对象在堆内存的首地址是否相同
		boolean  bl=o1.equals(o2);
		System.out.println(bl);		
		Object  o3=o1;
		System.out.println(o1.equals(o3));
	}
}

在这里插入图片描述

(4)==和equal方法的区别
==即可以比较基本数据类型,也可以比较引用数据类型。
基本数据类型比较的是值,引用数据类型比较的对象的首地址。
equals方法只能比较引用数据类型,比较的是对象的首地址。
案例

package com.guo.demo;

public class TestObject {
	public static void main(String[] args) {
		Object  o1=new  Object();
		Object  o2=new  Object();
		Object o3=o1;
		System.out.println(o1==o2);
		System.out.println(o1==o3);
		System.out.println(o1.equals(o3));
		System.out.println(o1.equals(o2));
		System.out.println(9==9);
	}
}

运行结果:
在这里插入图片描述

3、java.lang.String

(1)功能:存储字符串、操作字符串
(2)构造器

String(String original) 初始化新创建的String对象,使其表示与参数相同的字符序列;
换句话说,新创建的字符串是参数字符串的副本。 String(char[] value) 分配一个新的 String
,以便它表示当前包含在字符数组参数中的字符序列。 String(byte[] bytes)
通过使用平台的默认字符集解码指定的字节数组来构造新的 String 。

//构造器来创建String对象,保存字符串信息

String s1 =”abcd”;
String s2=new String(“abcd”);

多种创建方式,根据需要来选择合适的创建方式;
(3)字符串存储结构
在这里插入图片描述

(4)方法:操作字符串

int length() 返回此字符串的长度。 char charAt(int index) 返回 char指定索引处的值。
int indexOf(String str) 返回指定子字符串第一次出现的字符串内的索引。 int lastIndexOf(String
str) 返回指定子字符串最后一次出现的字符串中的索引。 String substring(int beginIndex)
返回一个字符串,该字符串是此字符串的子字符串。 String substring(int beginIndex, int
endIndex) 返回一个字符串,该字符串是此字符串的子字符串。 String replace(CharSequence
target, CharSequence replacement)
将与字面目标序列匹配的字符串的每个子字符串替换为指定的字面替换序列。CharSequence 字符序列,就是字符串。
String[] split(String regex) 将此字符串分割为给定的 regular expression的匹配。

案例

package com.guo.demo;

public class TestObject {
	public static void main(String[] args) {
		String s="asdfjklaa";
		System.out.println(s.length());//输出字符串长度
		System.out.println(s.charAt(0));//找出下标为0的字符
		System.out.println(s.indexOf("a"));//找出第一个a所在的下标
		System.out.println(s.lastIndexOf("a"));//找出a最后一次出现的下标
		System.out.println(s.substring(5));//从下标为5开始输出子串
		System.out.println(s.substring(0, 3));//从下标0开始,一直到下标3
		System.out.println(s.replace("asd", "I love you"));//将字符串中asd替换为I love you
		String a[]=s.split("j");
		for (int i = 0; i < a.length; i++) {
			System.out.println(a[i]);
		}
	}
}

结果:
在这里插入图片描述

转接上面的字符串方法


> String	trim()  返回一个字符串,其值为此字符串,并删除任何前导和尾随空格。 boolean	endsWith(String
> suffix)  测试此字符串是否以指定的后缀结尾。  boolean	startsWith(String prefix) 
> 测试此字符串是否以指定的前缀开头。  char[]	toCharArray()  将此字符串转换为新的字符数组。 
> String	toLowerCase()  将所有在此字符 String使用默认语言环境的规则,以小写。 
> String	toUpperCase()  将所有在此字符 String使用默认语言环境的规则大写。 
> int	compareTo(String anotherString)  按字典顺序比较两个字符串。

案例
trim()方法

public class Demo {
	public static void main(String[] args) {
		
		String str="  woshidahaoren  ";
		System.out.println(str);
		System.out.println(str.trim());//去除字符串前后空格
	}
}

结果
在这里插入图片描述

startsWith和endsWith案例

String str="你说家是唯一的城堡,随着稻香河流奔跑";
		boolean a1=str.startsWith("你说");
		boolean a2=str.startsWith("说");
		boolean b1=str.endsWith("奔跑");
		boolean b2=str.endsWith("benpao");
		System.out.println(a1);
		System.out.println(a2);
		System.out.println(b1);
		System.out.println(b2);

运行结果:
在这里插入图片描述

toCharArray方法

String str="你说家是唯一的城堡,随着稻香河流奔跑";
char[] a=str.toCharArray();//将str输出为字符数组
System.out.println(str);
for (int i = 0; i < a.length; i++) {
	System.out.print(a[i]+" ");
}

运行结果:
在这里插入图片描述

toUpperCase、toLowerCase、compareTo方法

String str="to be OR not to be";
		String a="abc";
		String b="acb";
		System.out.println("未转变的字符串:"+str);
		System.out.println("转化为大写的字符串:"+str.toUpperCase());
		System.out.println("转化为小写的字符串:"+str.toLowerCase());
		System.out.println("a与b的比较结果为:"+a.compareTo(b));//a大返回1,a小返回-1,相等返回0	

运行结果:
在这里插入图片描述

重写的方法:

int hashCode() 返回此字符串的哈希码。 String toString() 此对象(已经是字符串!)本身已被返回。
boolean equals(Object anObject) 将此字符串与指定对象进行比较。

案例:

	String  s1=new String("abcd");
		String  s2=new String("abcd");
		
//		Object hashCode方法:返回对象的哈希码值
//		String重写了hashCode方法:返回的是String对象保存的字符串的哈希码值
		System.out.println(s1.hashCode());
		System.out.println(s2.hashCode());
		
//     Object  toString()方法:包名.类名@16进制哈希码
//		String重写了toString()方法:返回保存的字符串
		System.out.println(s1.toString());
		System.out.println(s2.toString());
		
		System.out.println(s1);
		System.out.println(s2);
		
//		Object  equals()方法:比较两个对象的首地址是否相同
//		String重写了equals方法:比较保存的字符串是否相同
		System.out.println(s1.equals(s2));
		System.out.println(s1==s2);

(5)堆和常量池
简写形式创建的对象在常量池中,使用new创建的对象在堆里。
每new一次,都会在堆里创建一个新对象。
但是,常量池中如果已经存在一个对象保存相同字符串内容,那么不会创建对象,直接返回已经存在的对象的首地址。
在这里插入图片描述

(6)String特点
String字符串是常量,也就是String对象中保存的字符串内容不可以修改。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/156200.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Conscript_const let var

    Conscript_const let var1.let命令基本语法ES6新增了let命令,用来声明变量。它的用法类似于var,但是所声明的变量,只在let命令所在的代码块内有效。{leta=1varb=2console

    2022年7月29日
    3
  • phpstorm激活码2021【2021最新】[通俗易懂]

    (phpstorm激活码2021)最近有小伙伴私信我,问我这边有没有免费的intellijIdea的激活码,然后我将全栈君台教程分享给他了。激活成功之后他一直表示感谢,哈哈~IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html…

    2022年3月27日
    49
  • 必读,sql加索引调优案例和explain extended说明

    做一个积极的人编码、改bug、提升自己我有一个乐园,面向编程,春暖花开!昨天分享了Mysql中的 explain 命令,使用 explain 来分析 select 语句的运行效果,如 :explain可以获得select语句使用的索引情况、排序的情况等等。链接:顺便提到了explain extended,有小伙伴留言说想知道一些explain extended,那今天就在简单讲解一下。…

    2022年2月28日
    31
  • 中国石化java待遇_中国石化JAVA软件工程师面试:首先,上午进行面试人员签到 – 职朋职业圈…「建议收藏」

    中国石化java待遇_中国石化JAVA软件工程师面试:首先,上午进行面试人员签到 – 职朋职业圈…「建议收藏」为了帮助职业圈网友能够及时了解中国石化的面试流程以及面试过程所涉及的面试问题,职业圈小编把刚获得的中国石化面试经验马上编辑好,快速提供给大家,以便能够尽快帮助到有需要的人。这次面试总共花了0.5天。面试形式包括群面。面试过程首先,上午进行面试人员签到,大约100人左右。一共要2个人。下午1点半开始统一面试。人员较多,所以每个人只有3分钟时间,一共最少8位面试官。过程中,他们很少提问题,如果你的技…

    2022年10月15日
    0
  • 固态硬盘不能恢复吗_固态硬盘资料能恢复吗

    固态硬盘不能恢复吗_固态硬盘资料能恢复吗固态硬盘(SSD)凭借超高速的读写速度在高端玩家中颇受欢迎,但是SSD硬盘也暴露出一些不成熟的表现,之前已有过固件门、性能下降等例子。Techgage网站最新的测试显示SSD硬盘在数据恢复方面遇到了新的挑战,这一问题在支持TRIM指令的固态硬盘上尤为严重。有鉴于此,编辑将这篇文章编译过来希望能引起玩家的重视。目前这一问题还没有别的评测加以佐证,笔者手头也没有固态硬盘可重复验证,希望正在使用固态硬盘

    2022年9月19日
    0
  • 少年群侠传服务器维护时间,少年群侠传————【维护】7月6日更新维护公告…

    少年群侠传服务器维护时间,少年群侠传————【维护】7月6日更新维护公告…亲爱的玩家:大家好!为了更新游戏内容,提升游戏体验,7k7k《少年群侠传》将于7月6日7:00-10:00对所有服务器进行更新维护,维护期间无法登陆游戏,维护时间预计3小时。如果在维护期间无法完成维护相关事宜,开机时间将继续顺延,如果提前解决问题,也将提前开放服务器。请各位玩家相互转告,并留意游戏开放时间。对于停机期间给您带来的不便,敬请见谅。7k7k《少年群侠传》运营团队感谢所有玩家的支持和配合…

    2022年5月12日
    32

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号