黑马程序员技术交流社区
标题:
致谢我们那些从面向对象到集合逝去的脑细胞~
[打印本页]
作者:
Lindam
时间:
2018-4-16 14:53
标题:
致谢我们那些从面向对象到集合逝去的脑细胞~
刚学完基础班第九天的课程,课程进行到了集合,收获很多,但是也耗损了很多脑细胞。那么就来细数下这些脑细胞都在哪壮烈牺牲了吧。
面向过程是面向对象的基础,面向过程是指向一件事过程的详细步骤,而面向对象则是让其他人或者事代为去处理,举例来说就像老板和下属一样;面向对象过程先建立一个类,而类包括成员变量和成员方法;成员变量跟局部变量区别在于:成员变量是放在类中方法外,在堆内存中运行,可以在任何面向对象任何地方用,初始值整数类型默认为0,浮点类型默认为0.0;引用类型默认为null,布尔类型默认为false。而局部变量只作用于方法中,赋值才可以使用,存在栈内存中;成员变量一般要私有化private,能保障数据的安全性,防止外界随意更改。但是private后只能在本类中使用,要想在面向对象中调用,需要使用get/set。在创建对象时要构造方法,构造方法分为有参构造和无参构造;无参构造的快捷键为点击source-generate constructor from superless;有参构造点击source-generate constructor from using field; get/set快捷键为 shift+alt+s;new出来的东西都属于引用类型,创建时需要导包而创建对象时不需要导包是因为创建对象的包在主方法内不需要导包,如果属于java.lang包下的也不需要导包;而导包有三种方式,快捷键导包使用 ctrl+shift+o;面向对象还会被用于创建数组,创建数组时需要把数组中每个对象赋值给每个索引;然后遍历数组接收时要使用类去接收。而得到的变量实际上是个地址值。所以输出时应在变量上.getN();而面向对象与集合的结合基本类似,不同的是集合不需要赋值给每个对象,而是采用添加add()方法;
String 与StringBuilder的使用与区别;
String字符串属于一种特殊的引用类型,不需要导包,是因为它在java.lang包下;String构造方法有四种,一种直接赋值构造,三种需要new出来的构造。其中由字符数组构造时,可以把字符数组转化为字符串,还有调取字符数组的一部分构造成字符串;而此时判断两个字符串是否相等,普遍用的==在引用类型中是用于比较其地址值是否相等。常量池中有很多常量,不重复但是其地址值也都不同;想要比较两个字符串是否相等需要用到字符串的判断功能,表达式有equals(),equalsIgnoreCase();startsWith(),endsWith();返回的值均为布尔值,而startsWith(),endsWith()中字符串可以有一到多个字符;
字符串的获取功能有.length();.charAt(索引)这可以用于给出一个索引求出索引对应的字符串的字符,用于遍历字符串,使用String类的变量去接;String.indexOf(字符);用于获取一个字符对应的索引号;截取有两种方法:String.substring(截取开始的索引号);String.substring(截取开始的索引号,截取结束的索引号,不包含结束的那个字符); 字符串还有转化功能,由字符数组转化为字符串是使用创建字符串,然后把字符数组的变量给字符串;而字符串转化为字符呢,只需要字符串变量.toCharArray();而字符串与StringBuider转化方式类似,String转化为StringBuider,需要创建一个StringBuider对象,然后把String的变量给StringBuider对象;StringBuider转化为String,只需要StringBuider对象名.toString( ); String的String.toUpperCase( )与String.toLowerCase( );是把字符串中的字符转化为大写或者小写,如果需要把部分转化为大写,部分转为小写,需要结合字符串的截取功能;String.trim( )功能是用于把字符串前后两端的空格去掉;String.split()用于把字符串分割为字符串数组,使用时记得要用字符串数组去接,然后遍历得到字符串数组;而StringBuilder相比于字符串内容是可变的,而字符串内容不可以改变;这也是数组与集合的区别,都属于容器可以存放多个遍历;StringBuilder构造方法也是new出来,属性功能有.capacity( ) 与.length( );是用来求他们的容量和长度;StringBuilder的方法功能有.append( ); 是它的添加功能,里面可以放任何数据类型;而且加上后得到的还是一个对象,可以继续添加方法,所以可以使用它链式编程;它与集合的添加功能类似,只是集合的添加功能使用.add( ); StringBuilder的反转功能为.reverse( );常用来与字符串转化求字符串反转后的数据;
集合也是一种容器,长度可变;集合属于java.util包下的所以需要导包,构造方法时是用 ArrayList<> a= new ArrayList<>( );尖括号里是引用类型;它的方法有增删改得:增使用.add( );()内容要与构造方法时所使用的引用类型对应;删除.remove( )有两种方式:括号内可以是删除一个指定的元素,返回的是布尔类型,判断删除元素是否成功;而括号内如果是索引的话返回的是该索引出的元素; 改使用.set( )中放入要改的索引号,要换的元素;返回的是改的元素;得 .get( )用于获取某个索引出的元素,可以使用它进行集合的遍历;而求集合的长度不用length,而是用size();集合常用于与字符串,数组,对象结合;
作者:
飞鸟sama
时间:
2018-4-16 15:56
学到了,感谢大佬的分享!
作者:
cj1234
时间:
2018-4-18 12:50
感谢班里有你这么刻苦的同学
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2