接受用户输入的用户名和密码,判断用户名和密码是否正确,允许输入次数三次。
import java.util.Scanner;
public class test {
public static void main(String[] args){
//设置用户名
String rightname="mmk";
//设置密码
String rightpassword="1314520";
//给了三次机会输入
for (int i=2;i>=0;i--){
//创建输入对象
Scanner test1=new Scanner(System.in);
//输出提示信息
System.out.println("请输入用户名:");
//输入用户名
String username = test1.next();
//创建输入对象
Scanner test2=new Scanner(System.in);
//输出提示信息
System.out.println("请输入密码:");
//输入秘密
String password=test2.next();
//使用equaals来对比用户名和密码是否正确
if ((username.equals(rightname ))&&(password.equals(rightpassword ) )){
System.out.println("用户名和密码输入正确,验证成功");
//验证成功,跳出循环
break;
}else{
//输出提示信息
System.out.println("用户名和密码输入错误,你还有"+i+"次机会");
}
}
}
}
模拟通讯大数据行程码屏蔽手机号的若干位,如“151****7580”。
import java.util.Scanner ;
public class test{
public static void main(String[] args){
Scanner scan = new Scanner(System.in);
//输出提示信息
System.out.println("请输入手机号码:");
//创建输入对象
String number=scan.next();
//使用substring来截取字符串
String phone3=number.substring(0,3);
String phone4=number.substring(7);
//输出屏蔽后的号码
System.out.println("手机号码为:"+phone3+"****"+phone4);
}
}
通过身份证号码,判断用户的个人信息,包括出生年月日、性别。并输出到控制台。(可以尝试判断出生的省份)
import java.util.Scanner;
public class test{
public static void main(String[] args) {
Scanner scan=new Scanner(System.in);
System.out.println("请输入身份证号码:");
//输入身份证号码
String id = scan.next();;
//省份
String province=id.substring(0,2);
//年
String year=id.substring(6,10);
//月
String month=id.substring(10,12);
//日
String day=id.substring(12,14);
//性别
char gender =id.charAt(16);
//将性别那位转变为int型
int number = gender-46;
//判断省份
switch(province){
case"11":
if(number%2==0) {
System.out.println("来自北京市,是女生,出生于"+year+"年"+month+"月"+day+"日");
}
else{
System.out.println("来自北京市,是男生,出生于"+year+"年"+month+"月"+day+"日");
}break;
case"41":
if(number%2==0) System.out.println("来自河南省,是女生,出生于"+year+"年"+month+"月"+day+"日");
else{
System.out.println("来自河南省,是男生,出生于"+year+"年"+month+"月"+day+"日");
}break;
}
}
}
接受用户输入的一个字符串,判断他们是否是对称字符串。
提示:两种方法均可
Plain Text
(1)第一种方法,利用字符串倒着遍历,for (int i = str.length()-1; i >= 0; i--)
(2)第二种方法StringBuilder reverse (r) 反转容器的对象
import java.util.Scanner ;
public class test{
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
//输出提示信息
System.out.println("请输入一串字符串:");
//输入字符串
String str = scan.next();
//设置判断标志
int flag=0;
//for循环遍历字符串
for (int i = str.length() - 1; i >= 0; i--) {
//将字符串的第一位与最后一位比较
if(str.charAt(i)==str.charAt(str.length() -1-i) ){
//比对成功则继续比较下一位
continue;
}
else{
//比对不成功,flag++,跳出for循环
flag++;
break;
}
}
//根据最后flag的值来判断是否是对称字符串
if(flag==1){
System.out.println("该字符串不是对称字符串");
}
else{
System.out.println("该字符串是对称字符串");
}
}
}
import java.util.Scanner ;
public class test{
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
//输出提示信息
System.out.println("请输入一串字符串:");
//输入字符串
String str = scan.next();
//使用链式编程反转字符串
String res =new StringBuilder().append(str).reverse().toString();
//比较字符串
if(res.equals(str) ){
System.out.println("该字符串是对称字符串");
}
else{
System.out.println("该字符串不是对称字符串");
}
}
}
接受用户输入的一个字符串,打乱该字符串并输出。
提示:遍历数组,使用随机数Random类,生成随机索引,交换数组的两个值
import java.util.Scanner ;
import java.util.Random;
public class test{
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
//输出提示信息
System.out.println("请输入一串字符串:");
//输入字符串
String str = scan.next();
//创建一个字符串数组,将字符串转为字符存入数组中
char[] tempt=str.toCharArray();
Random random=new Random();
//遍历数组实现交换字符位置
for (int i = 0; i < tempt.length ; i++) {
//生成随机索引
int ran = random.nextInt(tempt.length );
//将生成是随机索引数与第i个字符串交换位置
char temp=tempt[i];
tempt[i]=tempt[ran];
tempt[ran]=temp;
}
//将打乱的字符串数组拼为一个新的字符串
String s=new String(tempt);
//输出新的字符串
System.out.println("新生成的字符串为:"+s);
}
}
已知字符串“Five miles away”
按要求执行以下操作:
(1) 统计字符串中字母e出现的次数。
(2) 提取字符串away。
(3) 将字符串复制到一个字符数组Char[]str 中。
(4) 将字符串中每个单词的第一个字母变成大写,输出到控制台。
(5) 实现该字符串的逆序输出
public class test{
public static void main(String[] args) {
String s="Five miles away";
int num =0;
//遍历字符串
for (int i = 0; i <s.length() ; i++) {
//统计e出现的次数
if(s.charAt(i) =='e'){
num++;
}
}
System.out.println("字母e出现了"+ num +"次");
//将字符串复制到数组中
char[] str=s.toCharArray();
System.out.println("字符串复制到数组中并输出:");
for (int i = 0; i < str.length ; i++) {
System.out.print(str[i]);
}
System.out.println();
//使用subString截取字符串
String s1=s.substring(11);
System.out.println("提取的字符串:"+s1);
StringBuilder sb=new StringBuilder();
for(int i = 0; i < s.length(); i++) {
if(i == 0 || s.charAt(i - 1) == ' ') {
sb.append(Character.toUpperCase(s.charAt(i)));
} else {
sb.append(s.charAt(i));
}
}
System.out.println("修改后的字符串为:"+sb.toString());
//使用链式编程将字符串逆序
String res =new StringBuilder().append(s).reverse().toString();
//输出逆序字符串
System.out.println("字符串逆序后为:"+res);
}
}