20175120彭宇辰 《Java程序设计》第七周学习总结
#教材内容总结
第八章 常用实用类
一、String类
- String类用来处理字符序列,在java.lang包中,程序可以直接使用String类。需要注意的是Java把String类声明为final类,因此用户不能扩展String类,即String类不可以有子类。
二、常量对象:
- 字符串常量对象是用双引号括起的字符序列,例如:"你好"、"12.97"、"boy"等。String常量被放在常量池中。
三、String对象:
- 字符串常量对象是用双引号括起的字符序列,例如:"你好"、"12.97"、"boy"等。String常量被放在常量池中。
- 可以使用String类声明对象并创建对象,例如:
String s = new String("we are students");
PS:用户无法输出String对象的引用:
Syste.out.println(s);输出的是对象的实体。
四、String的两个较常用的构造方法
String (char a[])用一个字符数组a创建一个String对象。String(char a[],int startIndex,int count)提取字符数组a中的一部分字符创建一个String对象,参数startIndex和count分别指定在a中提取字符的起始位置和从该位置开始截取的字符个数。
五、字符串的并置
String对象可以用“+”进行并置运算,即首尾相接得到一个新的String对象。
如果是两个常量进行并置运算,那么得到的仍然是常量,如果常量池没有这个常量就放入常量池。
参与并置运算的String对象,只要有一个是变量,那么Java就会在动态区存放所得到的新String对象的实体和引用。
六、String类的常用方法
public int length():获取一个字符串的长度
public boolean equals(String s):判断当前String对象的字符序列是否与参数s指定的String对象的字符序列相同
public boolean startsWith(String s):
判断当前String对象的字符序列前缀是否是参数指定的String对象s的字符序列public boolean endsWith(String s):
判断当前String对象的字符序列后缀是否是参数指定的String对象s的字符序列- public int compareTo(String s):按字典序与参数s指定的字符序列比较大小。
- 如果当前String对象的字符序列与s相同,该方法返回值0;如果大于s的字符序列,该方法返回正值;如果小于s的字符序列,该方法返回负值。
- 如果没有字符不同的索引位置,则较短字符串的字典顺序在较长字符串之前。在这种情况下,compareTo 返回这两个字符串长度的差。
best.compareTo(besti)=-1。 - 如果它们在一个或多个索引位置上的字符不同,假设 k 是这类索引的最小值,compareTo 返回这两个字符串在位置 k 处两个char 值的差,即值:this.charAt(k)-anotherString.charAt(k) 。
best.compareTo(student)=-17。
public boolean contains(String s):String对象调用contains方法判断当前String对象的字符序列是否包含参数s的字符序列
public int indexOf (String str):String对象调用方法从当前String对象的字符序列的0索引位置开始检索首次出现str的字符序列的位置,并返回该位置。如果没有检索到,该方法返回的值是–1。
public int lastIndexOf(String s):从当前String对象的字符序列的0索引位置开始检索最后一次出现str的字符序列的位置,并返回该位置。如果没有检索到,该方法返回的值是-1。
public String substring(int startpoint):字符串对象调用该方法获得一个新的String对象,新的String对象的字符序列是复制当前String对象的字符序列中的startpoint位置至最后位置上的字符所得到的字符序列。String对象调用substring(int start ,int end)方法获得一个新的String对象,新的String对象的字符序列是复制当前String对象的字符序列中的start位置至end–1位置上的字符所得到的字符序列。
public String trim() :得到一个新的String对象,这个新的String对象的字符序列是当前String对象的字符序列去掉前后空格后的字符序列。
七、字符串与基本数据的相互转化
Java.lang包中的Integer类调用其类方法:
public static int parseInt(String s)可以将由“数字”字符组成的字符串。public static byte parseByte(String s) throws NumberFormatExceptionpublic static short parseShort(String s) throws NumberFormatExceptionpublic static long parseLong(String s) throws NumberFormatExceptionpublic static float parseFloat(String s) throws NumberFormatExceptionpublic static double parseDouble(String s) throws NumberFormatException
可以使用String 类的类方法将数值转化为String对象:
public static String valueOf(byte n)public static String valueOf(int n)public static String valueOf(long n)public static String valueOf(float n)public static String valueOf(double n)
八、对象的字符串表示
- Object类有一个
public String toString()方法,一个对象通过调用该方法可以获得该对象的字符序列表示。 - 一个对象调用toString()方法返回的String对象的字符序列的一般形式为:
创建对象的类的名字@对象的引用的字符串表示
九、字符串与字符数组
String 类的构造方法:
String(char[]);String(char[],int offset,int length):分别用字符数组中的全部字符和部分字符创建字符串对象将String对象的字符序列存放到数组中的方法:
public void getChars(int start,int end,char c[],int offset ):将String对象的部分字符序列存放到数组中。public char[] toCharArray():将String对象的全部字符序列存放到数组中。
十、字符串与字节数组
构造方法
String(byte[]):用指定的字节数组构造一个字符串对象。String(byte[],int offset,int length):用指定的字节数组的一部分,即从数组起始位置offset开始取length个字节构造一个字符串对象。相关方法:
public byte[] getBytes():使用平台默认的字符编码,将当前String对象的字符序列存放到字节数组,并返回数组的引用。public byte[] getBytes(String charsetName):使用参数指定字符编码,将当前String对象的字符序列存放到字节数组,并返回数组的引用。
十一、正则表达式
正则表达式是一个String对象的字符序列,该字符序列中含有具有特殊意义字符,这些特殊字符称做正则表达式中的元字符。
String对象调用
public boolean matches(String regex)方法可以判断当前String对象的字符序列是否和参数regex指定的正则表达式匹配。
#代码调试过程中的问题与解决
问题一:代码上传时,用git pull合并代码出现下面的页面,然后无法继续操作

解决过程:我首先是用
git merge --abort
将刚刚关掉的页面回退,然后再次进入这个页面,按Ctrl+X就能解决问题了
问题二:例8.6,第六行显示找不到符号

解决方法:将getChar()写成getChars()
问题三:例8.7运行结果出现问题

未解决
问题四:例8.8编译未成功

未解决
代码量

20175120彭宇辰 《Java程序设计》第七周学习总结的更多相关文章
- 201521123027 <java程序设计>第七周学习总结
1.本周学习总结 2.书面作业 Q1.ArrayList代码分析 1.1 解释ArrayList的contains源代码 答: 源代码: //contains()方法 public boolean c ...
- 201871010106-丁宣元 《面向对象程序设计(java)》第七周学习总结
201871010106-丁宣元 <面向对象程序设计(java)>第七周学习总结 正文开头: 项目 内容 这个作业属于哪个课程 https://home.cnblogs.com/u/nwn ...
- 20145213《Java程序设计》第九周学习总结
20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...
- 21045308刘昊阳 《Java程序设计》第九周学习总结
21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...
- 20145236 《Java程序设计》第九周学习总结
20145236 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章 整合数据库 JDBC简介 1.JDBC是java联机数据库的标准规范.它定义了一组标准类与接口,标准API ...
- 20155304田宜楠2006-2007-2 《Java程序设计》第一周学习总结
20155304田宜楠2006-2007-2 <Java程序设计>第一周学习总结 教材学习内容总结 - 浏览教材,根据自己的理解每章提出一个问题 第一章 除了书上提到的开发工具还有什么适合 ...
- 20155303 2016-2017-2 《Java程序设计》第二周学习总结
20155303 2016-2017-2 <Java程序设计>第二周学习总结 教材学习内容总结 『注意』 "//"为单行批注符: "/*"与&quo ...
- 20145237 《Java程序设计》第九周学习总结
20145237 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章 整合数据库 JDBC入门 ·数据库本身是个独立运行的应用程序 ·撰写应用程序是利用通信协议对数据库进行指令 ...
- 20175209 《Java程序设计》第九周学习总结
20175209 <Java程序设计>第九周学习总结 一.教材知识点总结 有关数据库下载中存在可能出现的问题已经在博客<数据库安装和使用过程中出现的一些问题>给出了相应的解决办 ...
- 20175317 《Java程序设计》第九周学习总结
20175317 <Java程序设计>第九周学习总结 学前准备 首先下载XAMPP,下载完成后打开: 将前两个选项打开 在IDEA中配置驱动mysql-connector-java-5.1 ...
随机推荐
- HTML的块级元素和行内元素
行内元素一般是内容的容器,而块级元素一般是其他容器的容器.一般情况下,行内元素只能包含内容或者其它行内元素,宽度和长度依据内容而定,不可以设置,可以和其它元素和平共处于一行:而块级元素可以包含行内元素 ...
- JAVA如何request没有参数的post提交
过去做网页的时候 post过来的值都是带参的 我就request.getParameter("")来获取 现在过来的不带参 就一串字符串 我应该怎么获取? //用获取数据流的方式, ...
- Python_Mix*函数名的使用以及第一类对象,闭包,迭代器,for循环的内部机制
一:函数名的应用(第一类对象) 函数名的命名规范和变量是一样的,函数名其实就是变量名, 0)函数名可以赋值给其他变量 def func(): #定义一个名为func的函数 print('my ange ...
- 给django视图类添加装饰器
要将login_required装饰到view class的dispatch方法上, 因为dispatch方法为类方法,不是单个的函数,所以需要将装饰函数的装饰器 login_required转化为装 ...
- 【基于微信小程序的社区电商平台】需求分析心得——小豆芽
一.项目内容 基于微信小程序,做一个社区电商平台,抓住社区电商的特点,做出特色,与微信集成,实现商品的个性化发布,以及个性化营销. 个性化发布:用户可以在应用上直接发布自己的商品,通过搜索心愿单可以查 ...
- Windows浏览器无法连接VM虚拟机Centos并打开nginx页面
装的是centos6.7minimal版本,搜了下,需要关闭防火墙 于是 yum install iptables 然后关闭防火墙 service iptables stop 再打开浏览器,成功进入页 ...
- spring的bean创建过程
Spring的bean创建过程 步骤 执行过程 描述 1 ThreadLocal.set bean创建之前将beanName的一些属性放进ThreadLocal,避免多线程创建bean导致问题,并发创 ...
- redis应用--位图
在我们平时开发过程中,会有一些 bool 型数据需要存取,比如用户一年的签到记录,签了是 1,没签是 0,要记录 365 天.如果使用普通的 key/value,每个用户要记录 365 个,当用户上亿 ...
- 深入java----垃圾回收
Java和C++之间有一睹内存动态分配和垃圾收集技术所围成的“高墙”,墙外面的人想进去,墙里面的人想出来.-------<深入理解JVM虚拟机> 补充:在无用对象判断这两种方法中,都是靠对 ...
- Qt笔记之Q_DECLARE_METATYPE(Type)
首先看一看QVariant这个类,我们可以把它当做一个万能数据类型,需要的时候能转换为一种特定的类型. 使用canConvert()函数检查是否能转换为你想要的数据类型,结构为:bool QVaria ...