常用类 String Arrays Object Integer 日期Date Java API概述 (Application Programming Interface)应用程序编程接口 API---> java语言中实际提供的类和接口 API文档---> 对java中提供的类和接口中的功能进行说明的文档 String 类为例 查看API文档
基本数据类型包装类 Object 是java中所有类的基类(超类 祖宗类) 所有类直接间接继承Object 为实现多态性 toString() equals(Object obj); Arrays类 Arrays.toString();
String类/StringBuffer类/StringBuilder类 Math类/Random类/System类 Date类/Calendar类/ SimpleDateFormat类 BigInteger/Big
toString方法
Object类中的toString方法(public String toString() ),当我们创建一个新的类时便会默认继承Object类,没有重写toString方法时,在用子类对象中调用,将会输出该对象存储的内存地址。若是重写后将会输出该对象中的内容
public class Text1 { public static void main(String[] args) { One a=new One(); Tow b=new Tow(); System.out.println(a.toString()); System.out.println(b.toString()); } } class One{ } class Tow{ @Override public String toString() { return "Tow{}"; } }
equals方法(比较同一个类型的不同对象)
● Object类中定义有:
● public boolean equals(Object obj)方法
● 提供定义对象是否“相等”的逻辑。
● Object 的 equals 方法 定义为:x.equals ( y ) ,当 x 和 y是同一
个对象的引用时返回 true 否则返回 false
● JDK提供的一些类,如String,Date等,重写了Object的equals方
法,调用这些类的equals方法,
x.equals (y) ,当x和y所引用的对象
是同一类对象且属性内容相等时(并不一定是相同对象),返回
true 否则返回 false
public class Equalse { public static void main(String[] args) { Fast f1=new Fast(10); Fast f2=f1; System.out.println(f1.equals(f2)); Fast f3=new Fast(10); System.out.println(f3.equals(f1)); } } class Fast{ int a; public Fast(int a) { this.a = a; } }
Arrays类
在java中Arrays类中,所有的方法都是静态的,所以在调用时便可以直接用Arrays.方法名调用;
● sort -排序
● 作用于数组的所有元素
public static void sort(type[] a)
● 作用于数组指定范围内的元素
public static void sort(type[] a, int fromIndex(包括), int toIndex(不包括))
将指定的类型(除boolean以外的任意原生数据类型)数组所有元素(或指定范
围内的元素)按数字升序进行排序。
object型数组,根据元素的自然顺序,对指定对象数组进行升序排序。
(fromIndex==toIndex,则排序范围为空)
• 自定义对象排序
自定义类实现Comparable接口
重写compareTo方法
binarySearch -使用二分搜索算法搜索指定数组
● 声明:
public static int binarySearch(type[] a, type key)
public static int binarySearch(long[] a,int fromIndex,int toIndex,long key)
● 描述:
使用二分搜索算法搜索指定的type型数组,以获得指定的值。
● 参数:
a - 要搜索的数组。
key - 要搜索的值。
fromIndex - 要排序的第一个元素的索引(包括)。
toIndex - 要排序的最后一个元素的索引(不包括)。
type -byte、double、float、object、long、int、short、char
● 如果key在数组中,则返回搜索值的索引;否则返回-1或者”-“
toString() 方法
● 声明:public static String toString(type[] a)
● 描述:返回指定数组内容的字符串表示形式。
● 基本数组,字符串表示形式由数组的元素列表组成,括在[],相邻元素用“, ”(逗号加空格)分隔。
package changyonglei.TSTRING; import java.util.Arrays; public class 数组类型 { public static void main(String[] args) { int []a=new int[]{1,8,5,69,8,5,9}; System.out.println(Arrays.toString(a));//Arrays类中重写的toStrring方法,输出数组内的元素 Arrays.sort(a,2,5);//指定的范围类进行升序排列 Arrays.sort(a);//将数组a中的内容自动排序 System.out.println(Arrays.toString(a)); System.out.println( Arrays.binarySearch(a,4));//在数组中通过二分法方法来查找元素,有就返回索引值,没有就返回一个负值 System.out.println(Arrays.binarySearch(a,8)); } }
String类
● String类概述
字符串是由多个字符组成的一串数据(字符序列)的字符串常量,java中所有字
符串都是String类的实例.
● 有两种创建形式:
● 第一种:
String s = "abc";
先在栈中创建一个对String类的对象引用变量s,然后去字符串常量池(常量池位于堆中)中查找有没有"abc", 如果没有则在常量池中添加”abc”, s引用变量指向常量池中 的”abc”,如果常量池中有,则直接指向改地址即可,不用重新创建.
● 第二种:
一概在堆中创建新对象,值存储在堆内存的对象中。
String s = new String("abc");
StringBuffer类
在该类中,当生成对象是数组大小为默认是16,当使用有参构造方法StringBuffer("zfc");创建对象时,数组大小变成16+构造时传入的字符串的大小,当用对象名.append("jhdhj");将这空间装满时,那么将会重新生成一个数组,将之前的数组内容给复制过去
StringBuilder类
Random类
随机数Random
Random r=new Random(); r.nextInt();//产生一个整数范围(正负21亿)的随机数字 //r.nextInt(int类型常量/变量n);产生一个0到你之间的随机数,包含零,但不包含n System.out.println(r.nextInt(10)); for(int i=0;i<10;i++){ System.out.println(r.nextInt(100)); } while(true){ int num=r.nextInt(10); System.out.println(num); if(num==0||num==9){ break; } } for(int i1=0;i1<10;i1++){ int a=r.nextInt(5)+1; System.out.println(a); }
System类