Scanner类
Scanner是JDK5以后用于获取用户的键盘输入。
Scanner的构造方法原理
Scanner(InputStream source
)
System类下有一个静态的字段:
public static final InputStream in
; 标准的输入流,
对应着键盘录入。
hasNextXxx()
判断下一个是否是某种类型的元素,其中Xxx可以是Int,Double等。 如果需要判断是否包含下一个字符串,则可以省略Xxx
nextXxx()
获取下一个输入项。Xxx和上一项意义相同。
Scanner常用的方法
public int nextInt():获取一个int类型的值 public String nextLine():获取一个String类型的值 public String next():获取一个String类型的值
String类
String类表示的字符串。java程序中的所有字符串,如 “abc”,实现这个类的实例。字符串是常量,它们的值不能被创建后改变。支持可变字符串字符串缓冲区。因为字符串对象是不可改变的,所以它们可以被共享。
常见的构造方法
public String():空构造
public String(String original
):把字符串常量值转成字符串
public String(byte[] bytes
):把字节数组转成字符串
public String(byte[] bytes
,int index
,int length
):把字
节数组的一部分转成字符串
(index
:表示的是从第几个索引开始
, length
表示的是长度
)
public String(char[] value
):把字符数组转成字符串
public String(char[] value
,int index
,int count
):把字符
数组的一部分转成字符串
String的特点一旦被创建就不能改变
String s
= "hello" ;
s
= "world" + "java"; 问s的结果是多少
?
画内存图解释: 内容不能变,引用可以变 内存图如下:
String类的判断功能
public boolean equals(Object obj
): 比较字符串的内容是否相同
,区分大小写
public boolean equalsIgnoreCase(String str
): 比较字符串的内容是否相同
,忽略大小写
public boolean contains(String str
): 判断字符串中是否包含传递进来的字符串
public boolean startsWith(String str
): 判断字符串是否以传递进来的字符串开头
public boolean endsWith(String str
): 判断字符串是否以传递进来的字符串结尾
public boolean isEmpty(): 判断字符串的内容是否为空串
""。
String类的获取功能
public int length(): 获取字符串的长度。
public char charAt(int index
): 获取指定索引位置的字符
public int indexOf(int ch
): 返回指定字符在此字符串中第一次出现处的索引。
public int indexOf(String str
): 返回指定字符串在此字符串中第一次出现处的索引。
public int indexOf(int ch
,int fromIndex
):返回指定字符在此字符串中从指定位置后第一次出现处的索引。
public int indexOf(String str
,int fromIndex
): 返回指定字符串在此字符串中从指定位置后第一次出现处的索引。
可以顺带提一下lastIndexOf系列
public String
substring(int start
): 从指定位置开始截取字符串
,默认到末尾。
public String
substring(int start
,int end
): 从指定位置开始到指定位置结束截取字符串。
String类的转换功能
public byte[] getBytes(): 把字符串转换为字节数组。
public char[] toCharArray(): 把字符串转换为字符数组。
public static String
valueOf(char[] chs
): 把字符数组转成字符串。
public static String
valueOf(int i
): 把
int类型的数据转成字符串。
注意:String类的valueOf方法可以把任意类型的数据转成字符串。
public String
toLowerCase(): 把字符串转成小写。
public String
toUpperCase(): 把字符串转成大写。
public String
concat(String str
): 把字符串拼接。
String类的其他功能
public String
replace(char old
,char new) 将指定字符进行互换
public String
replace(String old
,String
new) 将指定字符串进行互换
public String
trim() 去除两端空格
public int compareTo(String str
) 会对照ASCII 码表 从第一个字母进行减法运算 返回的就是这个减法的结果
如果前面几个字母一样会根据两个字符串的长度进行减法运算返回的就是这个减法的结果
如果几个字符串一摸一样 返回的就是
0
public int compareToIgnoreCase(String str
) 跟上面一样 只是忽略大小写的比较