Java Number类, Character类,String类

Java Number类java

 
 

一般,当要在Java编程中使用数字时,可使用原始数据类型,如:byteintlongdouble等。git

示例

int i = 5000;
float gpa = 13.65;
double mask = 0xaf;

 

 

可是,在开发过程当中,咱们遇到的是须要使用对象而不是原始数据类型的状况。要实现这一点,可以使用Java提供的包装类。面试

全部包装类(如:IntegerLongByteDoubleFloatShort)都是抽象类Number的子类。正则表达式

Number类

包装类的对象包含或包装其各自的基本数据类型。将原始数据类型转换为对象称为装箱,编译器会对此进行处理。 所以,在使用包装器类时,只需将原始数据类型的值传递给包装类的构造函数就能够对它进行对应的操做。spring

而且包装对象将转换回原始数据类型,而且此过程称为拆箱Number类是java.lang包的一部分。编程

如下是装箱和拆箱的示例 -设计模式

public class Test {

   public static void main(String args[]) {
      Integer x = 5; // 装箱:将 int 添加到 Integer 对象
      x =  x + 1000;   // 拆箱:将Integer 对象转为 int 
      System.out.println(x); 
   }
}

 

 

执行上面示例代码,获得如下结果:数组

1005

 

x赋予整数值时,编译器将整数装箱,由于x是整数对象。 以后,x又被拆箱,以便它们能够做为整数执行加法运算。微信

 

Number类的方法

如下是Number类的全部子类实现方法的列表 -dom

编号 方法 描述
1 xxxValue()方法 将此Number对象的值转换为xxx数据类型并返回它。
2 compareTo()方法 将此Number对象与参数进行比较。
3 equals()方法 肯定此Number对象是否等于参数。
4 valueOf()方法 返回包含指定原始值的Integer对象。
5 toString()方法 返回表示指定intInteger值的String对象。
6 parseInt()方法 返回某个String的原始数据类型值。
7 abs()方法 返回参数的绝对值。
8 ceil()方法 返回大于或等于参数的最小整数,结果整数为double类型。
9 floor()方法 返回小于或等于参数的最大整数,结果整数为double类型。
10 rint()方法 返回与参数值最接近的整数,结果整数为double类型。
11 round()方法 返回最接近longint值,由方法返回类型指示参数的返回类型。
12 min()方法 返回两个参数中最小的那一个。
13 max()方法 返回两个参数中最大的那一个。
14 exp()方法 返回 e 的 x 次幂。e 表明天然对数的底数,其值近似为 2.71828
15 log()方法 返回参数的天然对数。
16 pow()方法 返回第一个参数的第二个参数的指数幂(乘方)值。
17 sqrt()方法 返回参数的平方根。
18 sin()方法 返回指定double值的正弦值。
19 cos()方法 返回指定double值的余弦值。
20 tan()方法 返回指定double值的正切值。
21 asin()方法 返回指定double值的反正弦值。
22 acos()方法 返回指定double值的反余弦值。
23 atan()方法 返回指定double值的反正切值。
24 atan2()方法 将直角坐标(x,y)转换为极坐标(r,theta)并返回theta。
25 toDegrees()方法 将参数转换为度数。
26 toRadians()方法 将参数转换为弧度。
27 random()方法 返回一个随机数。

Java Character类
 

一般,当处理字符时,使用原始数据类型char

示例

char ch = 'a';

// Unicode的大写字符
char uniChar = '\u039A'; 

// 字符数组
char[] charArray ={ 'a', 'b', 'c', 'd', 'e' };

 

 

可是在开发过程当中,常常遇到的是须要使用对象而不是原始数据类型的状况。 为了实现这一点,Java为原始数据类型char提供了包装类Character

Character类提供了许多用于操做字符的有用类(即静态)方法。 可使用Character构造函数建立Character对象,例如 -

Character ch = new Character('a');

 

 

在某些状况下,Java编译器还会建立一个Character对象。 例如,若是将原始字符传递给须要对象的方法,则编译器会自动将char转换为Character。此功能称为自动装箱或拆箱。

示例

// 这里是原始的char类型值:'a'
// 它被装入`Character`对象ch
Character ch = 'a';

// 这里原始char值'x',装箱用于方法test,
// 拆箱到char类型值:'c'
char c = test('x');

 

 

1. 转义序列

以反斜杠(\)开头的字符是转义序列,对编译器具备特殊含义。

在本教程中System.out.println()语句中常用换行符(\n),以便在打印字符串后前进到下一行。

下表中列出了Java转义序列 -

编号 转义序列 描述
1 \t 表示在文本中插入一个制表符。
2 \b 表示在文本中插入退格符。
3 \n 表示在文本中插入换行符。
4 \r 表示在文本中插入回车符。
5 \f 表示在文本中插入换页符。
6 \ ' 表示在文本中插入单引号字符。
7 \" 表示在文本中插入双引号字符。
8 \\ 表示在文本中插入反斜杠字符。

当在print语句中遇到转义序列时,编译器会相应地解释它。

示例

若是要在引号内加引号,则必须在内部引号上使用转义序列\" -

public class Test {

   public static void main(String args[]) {
      System.out.println("She said \"Hello!\" to me.");
   }
}

 

 

执行上面示例代码,获得如下结果:

She said "Hello!" to me.

 

 

Character方法

如下是Character类的全部子类实现的方法列表 -

编号 方法 描述
1 isLetter()方法 肯定指定的char值是否为字母。
2 isDigit()方法 肯定指定的char值是否为数字。
3 isWhitespace()方法 肯定指定的char值是否为空格。
4 isUpperCase()方法 肯定指定的char值是否为大写字母。
5 isLowerCase()方法 肯定指定的char值是否为小写字母。
6 toUpperCase()方法 返回指定char值的大写形式。
7 toLowerCase()方法 返回指定char值的小写形式。
8 toString()方法 返回表示指定字符值的String对象,即一个字符的字符串。

有关方法的完整列表,请参阅java.lang.Character API规范。



Java String类
 
 

字符串在Java编程中普遍使用,字符串就是一系列字符(由一个个的字符组成)。 在Java编程语言中,字符串被视为对象。

Java平台提供String类来建立和操做字符串。

 

1. 建立字符串

建立字符串的最直接方法是 -

String str = "Hello world!";

 

 

每当它在代码中遇到字符串文字时,编译器就会建立一个String对象,在本例中str对象的值为Hello world!

与其余对象同样,可使用new关键字和构造函数来建立String对象。String类有11个构造函数,方便使用不一样的源(例如:字符数组)提供字符串的初始值。

示例

public class StringDemo {

   public static void main(String args[]) {
      char[] helloArray = { 'Y', 'i', 'i', 'b', 'a', 'i' };
      String helloString = new String(helloArray);  
      System.out.println( helloString );
   }
}

 

 

执行上面示例代码,获得下结果:

Yiibai

 

 

注 - String类是不可变的,所以一旦建立,就没法更改String对象。 若是想要对字符串进行大量修改,则应使用StringBuffer和StringBuilder。

2. 字符串长度

用于获取对象信息的方法称为访问器方法。 能够与字符串一块儿使用来获取字符串长度的一个访问器方法是length()方法,它返回字符串对象中包含的字符数。

如下程序是String类的length()方法的示例。

public class StringDemo {

   public static void main(String args[]) {
      String greeting = "Hi,Welcome to Yiibai.com";
      int len = greeting.length();
      System.out.println( greeting+" 字符串的长度是: " + len );
   }
}

 

 

执行上面示例代码,获得下结果:

Hi,Welcome to Yiibai.com 字符串的长度是: 24

 

 

3. 链接字符串

String类包含一个用于链接两个字符串的方法 -

string1.concat(string2);

 

 

这将返回一个新字符串:string1,而且string1在结尾处添加了string2。 还能够将concat()方法与字符串文字一块儿使用,例如 -

"My name is ".concat("Maxsu");

 

 

字符串一般使用+运算符链接,如 -

"Hello," + " world" + "!"

 

 

上面代码执行后获得的结果是:

"Hello, world!"

 

 

下面再来看另外一个例子 -

public class StringDemo {

   public static void main(String args[]) {
      String string1 = "Bai";
      System.out.println("Yii" + string1 + ".com");
   }
}

 

 

上面代码执行后获得的结果是:

YiiBai.com

 

 

3. 建立格式化字符串

Java中使用printf()format()方法来打印带有格式化数字的输出。 String类有一个等效的类方法format(),它返回一个String对象而不是一个PrintStream对象。

使用Stringstatic format()方法能够建立重用的格式化字符串,而不是一次性打印语句。 例如 -

System.out.printf("The value of the float variable is " +
                  "%f, while the value of the integer " +
                  "variable is %d, and the string " +
                  "is %s", floatVar, intVar, stringVar);

 

 

上面打印语句可以使用格式化写为:

String fs;
fs = String.format("The value of the float variable is " +
                   "%f, while the value of the integer " +
                   "variable is %d, and the string " +
                   "is %s", floatVar, intVar, stringVar);
System.out.println(fs);

 

 

4. String类方法

如下是String类定义的方法列表 -

编号 方法 描述
1 char charAt(int index) 返回指定索引处的字符。
2 int compareTo(Object o) 将此String对象与另外一个对象进行比较。
3 int compareTo(String anotherString) 按字典顺序比较两个字符串。
4 int compareToIgnoreCase(String str) 按字典顺序比较两个字符串,但不区分大小写。
5 String concat(String str) 将指定的字符串链接到此字符串的末尾。
6 boolean contentEquals(StringBuffer sb) 当且仅当此String表示的字符串与指定的StringBuffer相同的字符序列时,才返回true
7 static String copyValueOf(char[] data) 返回表示指定数组中字符序列的String对象形式。
8 static String copyValueOf(char[] data, int offset, int count) 返回表示指定数组中字符序列的String对象形式。
9 boolean endsWith(String suffix) 判断此字符串是否以指定的字符做为后缀结尾。
10 boolean equals(Object anObject) 将此字符串与指定的对象进行比较。
11 boolean equalsIgnoreCase(String anotherString) 将此String与另外一个String进行比较,忽略大小写。
12 byte getBytes() 使用平台的默认字符集将此String编码为字节序列,将结果存储到新的字节数组中。
13 byte[] getBytes(String charsetName) 使用指定的字符集将此String编码为字节序列,将结果存储到新的字节数组中。
14 void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin) 将此字符串中的字符复制到目标字符数组中。
15 int hashCode() 返回此字符串的哈希码。
16 int indexOf(int ch) 返回指定字符在此字符串中第一次出现的索引。
17 int indexOf(int ch, int fromIndex) 返回指定字符在此字符串中第一次出现的索引,它从指定索引处开始搜索。
18 int indexOf(String str) 返回指定子字符串在此字符串中第一次出现的索引。
19 int indexOf(String str, int fromIndex) 从指定的索引处开始,返回指定子字符串在此字符串中第一次出现的索引。
20 String intern() 返回字符串对象的规范表示。
21 int lastIndexOf(int ch) 返回指定字符在此字符串中最后一次出现的索引。
22 int lastIndexOf(int ch, int fromIndex) 返回指定字符在此字符串中最后一次出现的索引,它从指定的索引开始向后搜索。
23 int lastIndexOf(String str) 返回指定子字符串在些字符串中最后出现的索引。
24 int lastIndexOf(String str, int fromIndex) 返回指定子字符串在此字符串中最后一次出现的索引,它从指定索引开始向后搜索。
25 int length() 返回此字符串的长度。
26 boolean matches(String regex) 判断此字符串是否与给定的正则表达式匹配。
27 boolean regionMatches(boolean ignoreCase, int toffset, String other, int ooffset, int len) 判断两个字符串区域是否相等。
28 boolean regionMatches(int toffset, String other, int ooffset, int len) 判断两个字符串区域是否相等。
29 String replace(char oldChar, char newChar) 返回一个新字符串,该字符串是使用newChar替换此字符串中出现的全部oldChar后的字符串。
30 String replaceAll(String regex, String replacement) 将替换此字符串中匹配给定正则表达式的每一个子字符串。
31 String replaceFirst(String regex, String replacement) 将替换此字符串中第一个匹配给定正则表达式的子字符串。
32 String[] split(String regex) 将此字符串拆分为给定正则表达式的匹配项。
33 String[] split(String regex, int limit) 将此字符串拆分为给定正则表达式的匹配项。
34 boolean startsWith(String prefix) 判断此字符串是否以指定的字符串前缀开头。
35 boolean startsWith(String prefix, int toffset) 判断此字符串在指定的索引是否以指定的前缀开始。
36 CharSequence subSequence(int beginIndex, int endIndex) 返回一个新的字符序列,它是该序列的子序列。
37 String substring(int beginIndex) 返回一个新字符串,该字符串是此字符串的子字符串。
38 String substring(int beginIndex, int endIndex) 返回一个新字符串,该字符串是此字符串的子字符串。
39 char[] toCharArray() 将此字符串转换为新的字符数组。
40 String toLowerCase() 使用默认语言环境的规则将此String中的全部字符转换为小写。
41 String toLowerCase(Locale locale) 使用给定Locale的规则将此String中的全部字符转换为小写。
42 String toString() 将这个对象(已是一个字符串)自己返回。
43 String toUpperCase() 使用默认语言环境的规则将此String中的全部字符转换为大写。
44 String toUpperCase(Locale locale) 使用给定Locale的规则将此String中的全部字符转换为大写。
45 String trim() 返回字符串的副本,移除前导和尾随空格。
46 static String valueOf(primitive data type x) 返回传递的数据类型参数的字符串表示形式。

有完整的Java初级,高级对应的学习路线和资料!专一于java开发。分享java基础、原理性知识、JavaWeb实战、spring全家桶、设计模式、分布式及面试资料、开源项目,助力开发者成长!


欢迎关注微信公众号:码邦主

 

相关文章
相关标签/搜索