【Java】基础15:字符串与static

00封面.png

​有个东西叫API,昨天忘记说明了。

API是啥呢?

API,全称叫Application Programming Interface,翻译成中文就是:应用程序编程接口。

按照我的理解它就相当于是一本字典,计算机语言的字典。

只不过我们平时所理解的字典,要么汉字,要么英文单词,在Java语言里就是一个个类,接口等,其实它们本质上是差不多的。

image

为什么平时很少需要使用到汉字字典?

因为这么多年的生长环境,很多常用的字都融会贯通了。

为什么我还需要时常查阅API?

因为我对API中的类基本都还没啥接触。

所以继续学习API中的常用类,也就相当于字典中的常用字。

一、String类

String,翻译成中文:字符串,它是Java里很重要的一个类。

前面还没有系统地学习过它,就已经接触过好多回了,毕竟它太常见了,常见频率大概就和中文中吃饭的饭字差不多吧。

String的创建方法:

image
  • 空参构造:值为空。

  • 字符数组构造方法。

  • 字节数组构造方法(按照对应的ASCII编码对应)。

  • 不用构造方法,直接赋值常量,这种方式比较特殊,也比较常见,因为常量的基本类型有一种就是字符串,所以可以直接赋值。

注:在jdk8中,char[]是字符串内部实现原理,在jdk9版本中改为byte[]了。

理解完创建方式,那String的常用方法有哪些?

1.判断方法

image
  • 定义了一个字符串变量str:“abc”。

  • equals("ABC"):将str与参数“ABC”相比较,“abc”和“ABC”不相等,故返回false。

  • equalsIgnoreCase(“ABC”):将str与参数“ABC”相比较(忽略大小写),这样的话“abc”和“ABC”就相等了,故返回true。

  • contain("ab"):判断str是否包含"ab",答案包含,故返回true。

  • startsWith(“a”):判断str是否以某个子串开头,“abc”以“a”开头,故返回true.

2.获取方法

image
  • length():获取字符串的长度,“abc”长度为3。

  • concat("def"):将“def”连接到字符串中,也就成了“abcdef”。

  • charAt(0):获取0索引位的字符,也就是’a‘。

  • indexOf("ab"):获取子字符串“ab“首字母在字符串的索引,若是不存在的话,返回-1。

  • substring(1):从指定索引(1)处开始截取字符串,直至结束。

  • substring(1,2):从指定索引(1)处开始截取,直至指定索引(2)处结束,截取字符串。

3.转换方法

image
  • tocharArray():将字符串转换为字符数组{’a‘,'b','c'}。

  • getBytes():获得对应的字节数组{97,98,99}。

  • replace(“bc”,''ef"):将字符串中的“bc”替换成“ef”,故成了“aef”。

  • toLowerCase():将字符串全部转换成小写字母。

  • toUpperCase():将字符串全部转换成大写字母。

4.切割功能

image

split():将字符串按照指定的规则切割开。

比如说:以“+”这个加号字符为界切割,但是因为“+”本身就有就具有一定的含义(它是个运算符),就要使用“\”,让“+”成为一个单纯的字符就可以了。

其中”\“叫做转义字符,当转义字符要当做普通的字符时,需要进行自身转义变成”\“。

二、static关键字

static这个单词前面已经不知道见过多少回了,现在就详细学学它到底是什么意思?

static翻译成中文就是:静态。它是一个修饰符,可以用来修饰变量和方法。

那静态变量和静态方法有何特别之处?

做一个回顾:

这几天我们学习了好几个类:Scanner类,Random类,ArrayList类。

这些类我们需要调用它的成员方法时,先得new出对应的一个对象,然后再用这个对象去调用对应的方法。

image

static的作用就是让这个类中的成员方法和成员变量,用类名直接就可以调用,不用new一个对象,操作起来非常方便,但相对的也就不安全,所以一般都是一些可以共享的信息才会用到static。

接下来就介绍两个工具类,体现static 方法的方便。

三、Arrays类

Arrays,这一看就是一个数组类,包含了各种操作数组的方法。

其所有方法均为静态方法,操作起来非常方便,其中最常用的两个静态方法:

image
  • toString():该方法能直接将一个数组转换成一个字符串。

  • sort():能将数组升序排列。

四、math类

math,翻译成中文就是数学的意思,显然就是数学里面需要的一些运算方法。

常用的有:

image
  • abs(-5):即表示求-5的绝对值,也就是5。

  • ceil(5.5):ceil意思是天花板,即表示往上取整,5.5往上取整也就是6。

  • floor(5.5):floor意思是地板,即表示往下取整,5.5往下取整也就是5.

  • round(5.5):round意思也就是四舍五入,现实里最常见的方式。

总结:

image

你可能感兴趣的:(【Java】基础15:字符串与static)