API概述

API:application programming interface,应用程序编程接口
用于规定方法名称的规则集合,定义了方法的修饰符、返回值类型、方法的名称、方法的参数列表、方法的功能。
应用程序编程接口也包含了各种有实际功能内容的方法、类、枚举、接口。

类库

1、java的源代码编译之后,会形成字节码文件,这些文件包含了类中所有的内容,在脱离源代码的前提下,这个字节码文件   仍可以继续使用。
2、java中可以将字节码文件,打包成jar
(1)jar包,是.class文件的压缩包,是java的专用压缩包,一旦获得了jar包,就相当于获得了里面所有的.class文件
(2)jar的生成:在eclipse中选中要打包的类型(项目,包,类),右键选择export---java---jar file 选择生成的jar文件的路径。
(3)jar的使用:将下载好的jar包,建议在工程目录下创建一个lib文件夹,拷贝到当前目录下,选择该jar包,右键build Path,---add to build Path(将当前的jar包中的类型添加到工程的编译路径)
(4)jar包的移除:先把jar包删除,将依赖路径也删掉,(不要让当前的工程在依赖这个jar包)右键工程---build Path --- configure build path----libraries --,选择要移除的jar -- remove
3、类库:(1)jar包的内容还是太少,一系列的jar包组成了一个类库,library(2)一旦导入了类型库,就相当于导入了类库中所有的jar包,相当于获取了所有的.class文件选中工程----右键----build path----add libraries----选择要添加的类型库即可

Object类

1、Object类是所有类型的顶层父类,所有类型直接或者间接的父类,所有的类型(包括数组)都含有Object类型中的所有的方法。随意定义一个类型,不手动的定义其父类,那么这个类的父类就是Object类。
2、Object类型的构造方法:Object()(1)可以自己创建对象(2)让子类访问,所有子类都会直接,或者间接的访问顶层父类中的空参构造(3)Object类在执行构造方法的时候,不去访问自己的父类的构造方法,因为没有父类了

Object类中的方法

toString

1、返回当前对象的字符串表示,在打印对象的引用时会自动自动调用toString方法。
2、Object类型中,这个方法的实现:全类名+@+哈希码值的十六进制表示getClass().getName() + "@" + Integer.toHexString(hashCode());
3、对象返回这样的一个地址值的字符串,没有什么意义,开发中需要打印对象的属性信息,因此子类需要重写这个方法。
4、重写:返回该对象中的所有成员变量的值。
5、操作:可以使用快捷键直接生成: Alt + shift  +s  s也可以根据格式需要自己重写

equals方法

1、用于比较两个对象是否相等的方法boolean equals(Object obj)
2、在object类型中的equals方法,比较的是两个对象的地址值是否相同
3、比较两个对象的地址,没有意义,开发中需要比较两个对象的属性信息是否相同,因此子类需要重写这个equals方法。
4、重写:比较两个对象中所有的属性
5、操作:可以使用快捷键直接生成: Alt + shift  +s  h也可以根据格式需要自己重写

== 和equals的区别

1、比较的内容不一样:==可以比较任意的数据类型,既可以比较基本的数据类型,还可以比较引用的数据类型,equals方法只能比较引       用数据类型。
2、比较规则不同:==号在比较基本数据类型的时候比较是数据的值,==号在比较引用数据类型的时候,比较的是地址值;equals方法在重写之前,比较的也是两个对象的地址,重写后比较的是属性值

Scanner类

1、录入基本数据类型的方法nextByte()  nextDouble() nextFloat() nextInt() nextLong()nextShort() nextBoolean()next方法,可以录入下一个完成的标记,返回一个字符串,通过空格来分隔各个标记nextLine();可以录入下一个完整的标记,返回一个字符串,通过换行符来分隔各个标记没有nextChar()方法,因为将来录入字符的时候,都按照录入字符串的方式,通过charAt(0) 来获取字符串中的下标为0 的字符。Scanner scanner = new Scanner(System.in);System.out.println("请输入一个字符:");char input = scanner.next().charAt(0);System.out.println(input);2、注意:当调用完以空格作为分隔符的方法next()之后,再调用一个以换行符为分隔符的方法nextLine()时,nextLine()不会再等待用户录入了,而是直接就结束程序了 如果打印返回的字符串,就是一个空串。解决方法:(1)连续调用两次nextLine(),第一次将空串跳过,第二次就会等待键盘录入了(2)创建两个Scanner对象,新的Scanner对象没有上次录入的数据,所以不会影响下次的录入(3)所有的录入都以字符串的形式录入到内存中,然后再进行数据类型的转换

String类

1、String就是字符串类型,属于java.lang 包,不需要导包
2、所有的字符串常量(“HelloWorld","abc")都属于String类型的对象
3、字符串字面值属于常量,存储在方法区中的常量池中
4、不可变的原因:String类型之提供了构造方法,没有提供set方法,因此在创建对象的时候,初始化成员变量,将来在创建对象完成之后,无法通过方法来修改

String类型的构造方法

1、String()创建一个空字符串
2、String(String original)创建的是一个参数字符串的副本(参数字符串是在常量池中存的,构造方法创建的字符串是在堆内存中的)
3、String(byte[] bytes):将一个字节数组转为字符串解码:将不认识的字节数组,转成认识的字符串编码:将一个字符串转换为一个字节数组的过程查询的是默认的平台编码
4、String(byte[] arr,int offset,int length),将字节数组的一部分转为字符串
5、String(char[])将字符数组转成字符串,不涉及到编码和解码的问题,就是将字符数组拼接成字符串
6、String(char[] chs,int offset,int length)将字符数组的一部分转成字符串

String类型的判断方法

1、equals(Object obj)判断调用者和参数对象描述的字符串内容是否相同
2、contains(CharSequence s)   当且仅当此字符串包含指定的 char 值序列时,返回 true。
3、equalsIgnoreCase(String anotherString)  将此 String 与另一个 String 比较,不考虑大小写。
4、startsWith(String prefix) 测试此字符串是否以指定的前缀开始。
5、endsWith(String suffix)  测试此字符串是否以指定的后缀结束。
6、isEmpty()      当且仅当 length() 为 0 时返回 true 返回字符串的长度

String类型的获取方法

1、length()   获取字符串字符的个数
2、charAt(int index) 返回调用者字符串中索引为index的字符,和length方法结合就能够得到调用者字符串中的每一个字符
3、subString(int beginIndex):获取一个字符串,内容是从当前字符串的beginindex索引开始
4、subString(int beginIdex,int endIndex)获取一个指定索引范围的子串beginIndex - 起始索引(包括)。endIndex - 结束索引(不包括)。
5、indexOf家族indexOf(int ch) 返回指定字符在此字符串中第一次出现处的索引。 int indexOf(int ch, int fromIndex) 返回在此字符串中第一次出现指定字符处的索引,从指定的索引开始搜索。 int indexOf(String str) 返回指定子字符串在此字符串中第一次出现处的索引。 int indexOf(String str, int fromIndex) 返回指定子字符串在此字符串中第一次出现处的索引,从指定的索引开始。
6、lastIndexOf 家族和indexOf家族一样,只不过是从后向前所有的字符和字符串的索引也都不会发生变化

String类型的转换方法

1、byte[] getBytes():j将当前字符串,转成字节数组
2、char[] toCharAarray():将当前字符串转成字符数组
3、toUpperCase():将当前字符串,转成全大写的格式
4、toLowerCase()  使用默认语言环境的规则将此 String 中的所有字符都转换为小写。
5、concat(String str)将指定字符串连接到此字符串的结尾。
6、valueOf家族 可以将任意数据类型的数据,转成字符串
package com.DaYu;public class Demo01 {public static void main(String[] args) {//      空参构造String str = new String();System.out.println(str);//空字符串
//String(String original)
//      创建的是一个参数字符串的副本(参数字符串是在常量池中存的,构造方法创建的字符串是在堆内存中的)
//      笔试题常见 String str1 = new String("java");//堆内存中//这边创建了两个对象String str2 = "java";//常量池中System.out.println(str1 == str2);//falseSystem.out.println(str1.equals(str2));//true//两个字符串内容相同String str3 = "ja" + "va";//常量优化机制System.out.println(str2 == str3);//trueString str4 = "ja";String str5 = "va";String str6 = str4 + str5;System.out.println(str2 == str6);//false//     String(byte[] bytes)将字节数组转成字符串byte[] bytes = {56,78,99,97,100};String strs1 = new String(bytes);System.out.println(strs1);//8Ncad//       String(byte[] arr,int offset,int length)将字节数组的一部分转为字符串byte[] bytes1 = {97,98,99,100,101};String strs2 = new String(bytes1,2,3);System.out.println(strs2);//cde//      String(char[])将字符数组转成字符串char[] chs1 = {    'a','j','a','v','a'};     String strch1 = new String(chs1);System.out.println(strch1);//ajava//      String(char[] chs,int offset,int length)将字符数组的一部分转成字符串char[] chs2 = {  'l','o','v','e','a'};     String strch2 = new String(chs2,2,2);System.out.println(strch2);//veString str = "I love java I love java";
//      length()    获取字符串字符的个数System.out.println(str.length());
//      charAt(int index)返回调用者字符串中索引为index的字符,和length方法结合就能够得到调用者字符串中的每一个字符char charAt = str.charAt(0);System.out.println(charAt);for (int i = 0; i < str.length(); i++) {System.out.println(str.charAt(i));}//       byte[] getBytes():将当前字符串,转成字节数组String str1 = "中国fasdf灬行文";byte[] bytes = str1.getBytes();printByte(bytes);byte[] bytes1 = {-42 ,-48 ,-71 ,-6};String str2 = new String(bytes1);System.out.println(str2);//      char[] toCharAarray():将当前字符串转成字符数组char[] charArray = str1.toCharArray();for (int i = 0; i < charArray.length; i++) {System.out.println(charArray[i]);}
}

String类型的其他方法

1、replace(char oldChar, char newChar) 返回一个新的字符串,它是通过用 newChar 替换此字符串中出现的所有 oldChar 得到的。
2、trim():去掉字符串两边的空格和制表符

Java基础---API概述---常用类(Object类/String类)---equals和==相关推荐

  1. Java基础面试:一文看懂String类中的常用方法

    中秋佳节将近,大仙提前在这里祝大家节日快乐! 大仙也是准备输出最后一篇文章,准备休假了.本次文章介绍的是Java基础面试常问面试知识点String 1.int length(): 返回字符串的长度: ...

  2. Java基础篇:常用类

    文章目录 1.字符串相关的类 1.1 String类及常用方法 String的特性 String对象的创建 字符串对象是如何存储的 String使用陷阱 String常用方法 1.2 StringBu ...

  3. Java基础之面向对象的概念 继承---组合----枚举类

    Java基础之面向对象的概念 继承---组合----枚举类 本章作为面向对象概念的最后一篇,但是作为一名java程序员在面向对象的这条路上还很长. 一.继承与组合简介 继承是实现类重用的重要手段,但是 ...

  4. java string类api_JAVA中String类的常用方法API

    @[toc] 前言 String 类是我们日常经常使用的Java类,以下是对该类的信息汇总,类的关系图如下 String类关系图 创建: String s="hello!";//使 ...

  5. String类比较,String类运算比较,String运算

    String类比较,String类运算比较 >>>>>>>>>>>>>>>>>>>&g ...

  6. 测开基础串讲-Java基础-测开常用API之Random类

    在日常的测试开发工作中,Random类算是使用比较频繁的一个类了,有时候创建测试数据,可能需要随机生成一些姓名.年龄.号码.编号等,这个时候我们可能就会在固定的名称后面加上随机数字.字符等:下面就来看 ...

  7. Java基础篇之常用类(1)

    目录 常用API: Scanner: object类: to String()方法: equals()方法: String类: String类创建对象的特点: String练习之模拟用户登录: Str ...

  8. Java基础知识强化26:Object类之hashCode()方法、getClass()方法

    1. Object类的hashCode()方法,如下: public  int  hashCode():返回该对象的哈希码值,这个值和地址值有关,但是不是实际地址值(哈希码值是根据实际地址值转化过来的 ...

  9. Java中字符串的学习(一)String类的概述及常见方法使用

    转载请注明出处http://www.cnblogs.com/devtrees/p/4347079.html (拓展:Api:编程语言对外给我们提供的应用程序接口.) 一.概述: 我们平时上网发帖,帖子 ...

最新文章

  1. d010:盈数、亏数和完全数
  2. LAMP编译安装之———httpd
  3. bash之逻辑控制---for语句
  4. NoHttpResponseException
  5. 炸了,为什么某高速网络总是二层通三层不通?
  6. OA系统常见的审批流程
  7. Halcon - 定位 - 卡尺
  8. 三条中线分的六个三角形_八年级数学上册:三角形已知两条边如何求第三边
  9. HTML5 Canvas中绘制线段
  10. 关于Parse库的配置问题
  11. python3中split的用法_python3 - 对有规律的字符串进行切割(split用法)
  12. matlab 变量的定义变量名称,matlab定义变量名
  13. 我的2020下半年阿里巴巴社招面试经历,分享我的复习方法以及面试真题(Java工程师方向)
  14. java调用百望税控NISEC_SKSC.dll发送xml报文
  15. awl多进程SYN攻击
  16. 投放Google广告怎么做才是最合适的?谷歌广告的优势在哪
  17. AnimationEvent事件问题之详细分解
  18. electron_笔记
  19. python学生管理系统数据库_Django+Mysql实现--学生管理系统
  20. 区块链、货币和社交扩展性 1

热门文章

  1. [BZOJ]3436: 小K的农场
  2. 移动端UI自动化Appium测试——Appium server两种启动方式
  3. Develop系列-API Guides-简介-应用基础
  4. 库存产品日期查询功能sql优化
  5. nyromodal 非常棒的弹出层,可内嵌各种文件
  6. KTH 皇家理工学院 计算机视觉和机器学习博士生 招生
  7. NeurIPS2021 MBT:多模态数据怎么融合?谷歌提出基于注意力瓶颈的方法,简单高效还省计算量...
  8. 以知识图谱为例,模型思维:简化世界的人工智能模型
  9. 自监督学习的一些思考
  10. Nature调查再聚焦读博压力:超1/3博士生焦虑抑郁,大学有没有能哭的地方?