码迷,mamicode.com
首页 > 编程语言 > 详细

JAVA基础--JAVA API常见对象11

时间:2017-10-02 11:52:19      阅读:253      评论:0      收藏:0      [点我收藏+]

标签:offset   image   演示   它的   bytes   目标   style   使用   天天向上   

一、 String 类型

  1. String类引入

 

    第二天学习过Java中的常量:

 

               常量的分类:

 

                       数值型常量:整数,小数(浮点数)

 

                       字符型常量:使用单引号引用的数据

 

                       字符串常量:使用双引号引用的数据

 

                       布尔型常量:true或false

 

                       null常量:null

 

             上述的大部分的常量都可以使用Java中提供的8种基本类型进行开辟空间,存储这些常量。

 

             字符串常量不属于8种基本类型中的数据。而它属于Java中的引用类型数据(类类型数据)。

 

        字符串数据在Java中使用String类进行描述。

 

        字符串数据它属于Java中一类数据,我们也可以把其看作一类事物。既然是一类事物,就一定可以使用Java中的某个类对其进行封装和描述。

 

        后期我们学习的目标和重点:

 

                 不再是如何去描述一个类(不是去定义类)。而是要学习怎么去使用别人(JDK)中提供好的类。需要知道这些类是干什么的,以及它中有哪些常用的方法,这些方法能够解决什么问题。

 

                   后期学习新的类的时候,学习方式:

 

                           重点是使用自己的代码去测试这些类中的方法,并得到自己的结论。

    2.String 类介绍

      技术分享     

      String 类代表字符串。Java 程序中的所有字符串字面值(如 "abc" )都作为此类的实例实现。

      在Java中只要使用双引号引用起来的任何数据它们都是String 的一个对象。

      技术分享  

      字符串是常量;它们的值在创建之后不能更改。因为 String 对象是不可变的,所以可以共享。

      虽然使用双引号引用起来的数据都是字符串,也是String的一个实例对象,但是这个对象中的字符数据一定写完,就已经是一个固定的数据,不能再进行修改,并且它存储在方法区的字符串常量池中。

      技术分享

      技术分享

    3.String类构造方法     

    String类中提供了大量的构造方法,都可以将不同形式的数据转成字符串对象。

    

 1 /*
 2  * 演示String类的构造方法
 3  */
 4 public class StringConstructorDemo {
 5     public static void main(String[] args) {
 6         
 7         method5();
 8     }
 9     /*
10      * 面试题
11      */
12     public static void method5() {
13         
14         String s = "abc";
15         String s2 = new String("abc");
16         /*
17          * s 和 s2 的区别?
18          * s它指向的方法区中的常量池中的 abc字符串
19          * s2它指向的是堆中的自己new的那个对象,而在堆中这个对象中维护的地址
20          * 指向的常量池中的abc字符串
21          * 
22          * String s = "abc"; 在内存中只有一个对象
23          * String s2 = new String("abc"); 在内存中有2个对象
24          */
25         System.out.println(s);
26         System.out.println(s2);
27         System.out.println(s == s2);
28     }
29     /*
30      * 演示将int类型的数组转成字符串
31      */
32     public static void method4() {
33         
34         int[] arr = {23456,23457,23458};
35         String s = new String(arr , 0 , 3);
36         System.out.println(s);
37     }
38     /*
39      * String(byte[] bytes, int offset, int length) 
40      *   byte[] bytes : 指定需要被转成字符串的那个字节数组
41      *   int offset : 从字节数组的那个下标开始转数据
42      *   int length : 需要将从offset开始往后共计转多少数据
43      */
44     public static void method3() {
45         
46         byte[] b = {97,98,99,100,65,49};
47         
48         String s = new String( b , 4 ,4 );
49         System.out.println(s);
50     }
51     /*
52      * 演示String类中的有参数的构造方法
53      */
54     public static void method2() {
55         
56         //创建字节数组
57         byte[] b = {97,98,99,100,65,49};
58         
59         //将字节数组中的所有数据转成字符串
60         String s = new String( b );
61         
62         System.out.println(s); 
63     }
64     /*
65      *  演示空参数的构造方法
66      *  String() 
67      */
68     public static void method1() {
69         
70         /*
71          * 使用String类的构造方法得到String对象
72          * 使用空参数的构造方法创建出的String对象,这个对象在堆中
73          * 而这个字符串对象中没有任何字符数据
74          */
75         String s = new String();
76         
77     }
78 }

    4. String 类常用方法     

      a. 拼接字符串

               猜测到某个功能之后,继续猜测它的方法参数以及返回值类型

               参数:有,至少2。实际值需要一个参数

               返回值类型:String , 拼接后的新的字符串

      技术分享

      技术分享

      b.根据字符找下标

      技术分享

      技术分享

      技术分享

      技术分享

    c.根据下标找字符

      技术分享

    d.字符串的长度

      技术分享

      技术分享

      e. 获取字符串中的一段子串

        技术分享

     

 1 /*
 2  * 演示String类中的截取方法
 3  */
 4 public class StringMethodDemo2 {
 5     public static void main(String[] args) {
 6         
 7         String s = "好好学习,天天向上";
 8         /*
 9          *  substring(int beginIndex) 
10          *      从指定的字符串中的beginIndex位置开始截取子串,一直到结束
11          *  substring( int beginIndex , int endIndex )
12          *      从指定的字符串中的beginIndex位置开始到endIndex结束(不包含endIndex位置上的字符)
13          */
14         String ss = s.substring(2);
15         System.out.println(ss);
16         String ss2 = s.substring(0, 5);
17         System.out.println(ss2);
18     }
19 }

    f. 字符串转数组

      技术分享

      技术分享

      

 1 //字符串转成字节数组
 2     public static void method2() {
 3         String s = "abdefg";
 4         //转字节数组
 5         byte[] bs = s.getBytes();
 6         
 7         for (int i = 0; i < bs.length; i++) {
 8             System.out.println(bs[i]);
 9         }
10     }
11     //字符串转字符数组
12     public static void method1() {
13         String s = "abcefg";
14         //转字符数组
15         char[] cs = s.toCharArray();
16         for (int i = 0; i < cs.length; i++) {
17             System.out.println(cs[i]);
18         }
19     }

 

    g. 其他判断方法

 

 

 

 

 

 

 

 

 

 

 

 

 

    

JAVA基础--JAVA API常见对象11

标签:offset   image   演示   它的   bytes   目标   style   使用   天天向上   

原文地址:http://www.cnblogs.com/Kubility123/p/7619860.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!