Scanner类和String类(字符串类)
Scanner类
Scanner的概述:用户通过键盘输入
hasNextxxx() 方法:判断输入的是否是某种类型的元素,其中xxx可以是int ,double 等类型
nextXxx() 获取下一个输入项。Xxx的含义和上个方法中的Xxx相同
两个常用的方法:
public int nextInt():获取一个int类型的值
public String nextLine():获取一个String类型的值
public String next():获取一个String类型的值
String类
字符串:字符串是由多个字符组成的一串数据(字符序列)
字符串可以看成是字符数组
String类的概述:
-
String
类代表字符串。Java程序中的所有字符串文字(例如
"abc"
)都被实现为此类的实例。字符串不变; 它们的值在创建后不能被更改。 字符串缓冲区支持可变字符串。 因为String对象是不可变的,它们可以被共享。 例如:
String类的重要特点:一旦被创建就不能改变 因为字符串的值是在方法区的常量池中划分空间 分配地址值的
String类的判断功能
A: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(): 判断字符串的内容是否为空串""。
用户模拟登录
package A;
import java.util.Scanner;
public class O {
public static void main(String[] args) {
String yhm ="mxf468";
String mima="qwqwqw";
boolean flag= true;
int i=3;
while (flag){ Scanner a = new Scanner(System.in);
System.out.println("请输入您的用户名");
String X =a.nextLine();
Scanner b= new Scanner(System.in);
System.out.println("请输入您的密码");
String X1 =b.nextLine();
i--;
if (X.equals(yhm)&&X1.equals(mima)){
System.out.println("账号密码正确输入成功");
flag=false;
}else {
System.out.println("账号密码错误 你还有"+i+"次机会");
}
}
}
}
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ehICj6uN-1573042889656)(C:\Users\磊酱嘤~1\AppData\Local\Temp\1573042779898.png)]
String类的其他功能
A:String的替换功能
public String replace(char old,char new) 将指定字符进行互换
public String replace(String old,String new) 将指定字符串进行互换
B:String的去除字符串两空格
public String trim() 去除两端空格
C:String的按字典顺序比较两个字符
public int compareTo(String str) 会对照ASCII 码表 从第一个字母进行减法运算 返回的就是这个减法的结果
如果前面几个字母一样会根据两个字符串的长度进行减法运算返回的就是这个减法的结果
如果连个字符串一摸一样 返回的就是0
运算 返回的就是这个减法的结果
如果前面几个字母一样会根据两个字符串的长度进行减法运算返回的就是这个减法的结果
如果连个字符串一摸一样 返回的就是0
public int compareToIgnoreCase(String str) 跟上面一样 只是忽略大小写的比较