导图社区 Scanner常见对象、String知识点学习
Scanner常见对象、String知识点学习:hasNextXxx:即判断接收录入的数据,返回值类型是boolean类型,Xxx可以是int,double,如果是判断字符串,Xxx可以不写即接收录入的数据。
网店详情页排版方法分享~包括中心页面组成,优质详情必备,详情页的排版参考方法。感兴趣的小伙伴可以看看哦~
喷绘色彩基础培训方案,内容涵盖色彩基础,喷绘写真。框架清晰,内容丰富,希望对小伙伴有所帮助哦~
酒窖营销计划方案,包括结果目标,过程目标。框架清晰,内容丰富,有需要的小伙伴可以看看哦~ 可供大家参考,借鉴,交流。
社区模板帮助中心,点此进入>>
英语词性
互联网9大思维
组织架构-单商户商城webAPP 思维导图。
法理
刑法总则
【华政插班生】文学常识-先秦
【华政插班生】文学常识-秦汉
文学常识:魏晋南北朝
【华政插班生】文学常识-隋唐五代
民法分论
Scanner常见对象、String知识点学习
Scanner
构造方法:
Scanner(InputStream source)
System类下的静态字段:
public static final InputStream in;标准的输入流
成员方法:
hasNextXxx:即判断接收录入的数据,返回值类型是boolean类型,Xxx可以是int,double,如果是判断字符串,Xxx可以不写即接收录入的数据
nextXxx:即接收录入的数据,Xxx和上边的Xxx功能类似
使用Scanner的时候 可能会出现的小问题
问题原因: 先录入int,再用nextLine()录入字符串
注意:用next()来接收就不会出现问题,原因在于nextLine() 能够识别/r/n,遇到/r/n就会停止,而其他都不会
解决方法:
1、接收数值后,重新创建一个Scanner对象来接收字符串。(浪费空间,不推荐)
2、都用字符串来接收,然后把其中的一个转为数值,通过 Integer中的public static int parseInt(String s)
String
基本概述:
1、字符串的字面值也可以看做是一个对象。
2、字符串的值是一个常量,存在常量池中,一旦初始化,就不能改变。
问题:字符串一旦初始化就不能发生改变,这句话对吗?说出原因
对。 这里的初始化,指的是字符串的值不能发生改变,因为字符串 是一个常量,存在于常量池中,而字符串的引用可以发生改变
Java中中文采用的是Unicode码表,占两个字节。 中文的第一个字节肯定是负数。
关于方法区的常量池:
1、Java针对常量池有优化机制
2、特点:有就使用,没有就创建
String();
空构造
String(byte[] bys);
把字节数组转成字符串
String(byte[] bys, int index,int length);
把指定长度的字节数组转成字符串(从给定索引开始,到给定长度结束)
String(char[] chs);
把字符数组转换成字符串
String(char[] chs, int index,int length);
把指定长度的字符数组转成字符串(从给定索引开始,到给定长度结束)
String(String s); //开发中我们不用,一般面试可能会问到。
成员方法
判断
首尾中空加判断(都是boolean类型)
startsWith(String str)
判断字符串是否以哪个字符串开始
endsWith(String str)
判断字符串是否以哪个字符串结束
contains(String str)
判断大字符串中是否包含小字符串
isEmpty()
判断字符串是否为空
equals(Object obj)
判断字符系列是否相等,区分大小写
equalsIgnoreCase(String str)
判断字符系列是否相等,不区分大小写
案例:模拟用户登陆
获取
截长取位取元素
substring(): 两个
String substring(int index);
从指定位置开始,默认到末尾截取一个新的字符串
String substring(int start,int end);
从指定位置开始,到指定位置结束,截取一个新的字符串。(包左不包右)
indexOf(): 四个
int indexOf(int ch);
从第一个字符开始,来找给定字符在字符串中第一次出现的位置
int indexOf(int ch, int fromIndex);
从给定的索引开始找给定的字符返回字符的索引
int indexOf(String str);
int indexOf(String str, int fromIndex);
给定的索引开始找给定的字符返回字符的索引
lastIndexOf:
功能和indexOf类似,只不过lastIndexOf是从后往前找。
char charAt(int index);
获取指定索引位置的字符
案例:字符串反转。
转换
大写拼串转数组
String toUpperCase()
把字符串转成大写
String toLowerCase()
把字符串转换成小写
String concat(String str)
把字符串拼接(没有+强大,它只能拼接俩个字符串)
两个静态的valueOf():
static String valueOf(char[] chs);
把字符数组转成字符串
static String valueOf(int ch);
把int类型的数据转成字符串
byte[] getBytes()
把字符串转换成字节数组
char[] toCharArray()
把字符串转换成字符数组
案例:每个字符出现的次数。
其他
去空替换字典排
String trim()
去除的是两端的空格
replace():两个
String replace(char old, char new);
新的字符替换旧的字符
String replace(String old, String new);
新的字符串替换旧的字符串
int compareTo(String str)
比较两个字符串(区分大小写)
int compareToIgnoreCase(String str)
比较两个字符串(不区分大小写)
暂时是2级,等到集合的时候重点掌握。
案例:大串中找小串出现的次数