Java技能树之“常用类”(上)
讲起Java中的类,不得不提一局,首先肯定是常用的输入输出。无论如何编程语言,相比我们入门程序都是Hello,World!,那么这么一个简单的输出语句,在java中还有哪些方法讷,跟着我一起走下去吧。
一,System类
在API中system类介绍的比较简单,我们给出定义,system中代表程序所在系统,提供了对应的一些系统属性信息和系统操作。
注意,system类不能手动创建对象,因为构造方法被私有化(即被private关键字修饰),组织外界创建对象(即不能用new关键字生成一个对象)。System类中的都是静态方法(static关键字修饰),类名访问即可。在JDK中,有许多这样的类。在 System 类提供的设施中,有标准输入、标准输出和错误输出流;对外部定义的属性和环境变量的访问;加载文件和库的方法;还有快速复制数组的一部分的实用方法。
常用方法有:
//控制台输出
System.out.println();
//当前系统时间 毫秒
System.currentTimeMillis();
// 终止当前正在运行的 Java 虚拟机
System.exit(0);
//运行垃圾回收器。
System.gc();
//确定当前的系统属性。
System.getProperties();
//用来实现将源数组部分元素复制到目标数组的指定位置
/**
* Object arr:要复制的原数组;
* Int srcPos:数组源的起始索引;
* Object dest:复制后的目标数组;
* int destPos:目标数组起始索引;
* int length,指定复制的长度;
*/
System.arraycopy(arr, 3 , copy, 0 , 2);
其中控制台输出Hello,World就是第一个方法。
二、String类
这个类直接上常用方法和代码:
常用方法
charAt():传入一个int类型参数,返回指定位置的字符
String():构造器,生成一个String对象
compareTo()与参数比较,相同返回0,小于返回-1,大于返回1
concat():将参数字符串连接到字符串串尾
contains():查找字符串中是否包含某字符
equals():字符串值比较
intern():返回对象的值(调用该方法时,返回值在常量池中)
length():返回字符串的长度
isEmpty():判断是否是空字符串
toLowerCase():将所有字符串转换为小写
toUpperCase():将字符串所有字符转换为大写
trim():返回字符串副本,忽略首部和尾部空白
equalsIgnoreCase():与equals类似,忽略大小写
substring():截取字符串
toCharArra():将字符串转换为字符数组
split():以指定字符分割字符串
getBytes():将字符串以字节数组返回
//将此字符串与指定对象进行比较。
public boolean equals (Object anObject);
//将此字符串与指定对象进行比较,忽略大小写。
public boolean equalsIgnoreCase (String anotherString);
//返回此字符串的长度
public int length ();
//将指定的字符串连接到该字符串的末尾。
public String concat (String str);
//返回指定索引处的 char值。
public char charAt (int index);
//返回指定子字符串第一次出现在该字符串内的索引。
public int indexOf (String str);
//返回一个子字符串,从beginIndex开始截取字符串到字符串结尾。
public String substring (int beginIndex);
//返回一个子字符串,从beginIndex到endIndex截取字符串。含beginIndex,不含endIndex。
public String substring (int beginIndex, int endIndex);
//将此字符串转换为新的字符数组。
public char[] toCharArray ();
//使用平台的默认字符集将该 String编码转换为新的字节数组
public byte[] getBytes ();
//将与target匹配的字符串使用replacement字符串替换
public String replace (CharSequence target, CharSequence replacement);
//将此字符串按照给定的regex(规则)拆分为字符串数组。
public String[] split(String regex ;
//判断字符串中是否包含指定字符。
boolean contains(CharSequence s);
其中:对于StringBuffer和StringBuilder而言
常用方法:
append():在字符串后面添加字符,可以是大部分数据类型
charAt():传入一个int类型参数,返回指定位置的字符
delete():删除指定区间的字符
insert():在指定位置插入元素
setCharAt():替换指定位置字符,参数为char类型
reverse():字符串反转
replace():替换指定区间字符
三,Arrays类
Arrays类位于 java.util 包中,主要包含了操作数组的各种方法。
- 此类包含用来操作数组(比如排序和搜索)的各种方法。此类还包含一个允许将数组作为列表来查看的静态工厂。
- 除非特别注明,否则如果指定数组引用为 null,则此类中的方法都会抛出 NullPointerException。
//将参数数组变成字符串
Arrays.toString(arr);
/**
* 如果是数值,sort默认按照升序从小到大
* 如果是字符串,sort默认按照字母的升序
* 如果是自定义的类型,那么这个自定义的类需要有Comparable或者Comparator接口的支持
*/
Arrays.sort()
//填充数组
Arrays.fill();
int[] arr = new int[5];//新建一个大小为5的数组
Arrays.fill(arr,4);//给所有值赋值4
String str = Arrays.toString(arr); // Arrays类的toString()方法能将数组中的内容全部打印出来
System.out.print(str);
//二分查找法找指定元素的索引值(下标)
Arrays.binarySearch();
int[] arr = {10,20,30,40,50};
System.out.println(Arrays.binarySearch(arr, 30));
//输出:2 (下标索引值从0开始)
//截取数组
Arrays.copeOf() 和Arrays.copeOfRange();
int[] arr = {10,20,30,40,50};
int[] arr1 = Arrays.copyOf(arr, 3);
String str = Arrays.toString(arr1); // Arrays类的toString()方法能将数组中的内容全部打印出来
System.out.print(str);
//输出:[10, 20, 30] (截取arr数组的3个元素赋值给姓数组arr1)
/**-------------------------------**/
int []arr = {10,20,30,40,50};
int []arr1 = Arrays.copyOfRange(arr,1,3);
String str = Arrays.toString(arr1); // Arrays类的toString()方法能将数组中的内容全部打印出来
System.out.print(str);
//输出:[20, 30] (从第1位(0开始)截取到第3位(不包括)
- 点赞
- 收藏
- 关注作者
评论(0)