实验1 字符串方法练习
一、实验目的
本实验的目的是让学生掌握String类的常用方法。
二、实验内容
1.模拟登录,输入密码,给三次机会,并提示还有几次。正确的密码为123。
import java.util.Scanner;
public class login {
public static void main(String args[]) {
String username="wangtingting";
String password="123";
int i=1;
int j=2;
Scanner s1=new Scanner(System.in);
while(i<=3) {
System.out.println("请输入用户名");
String name=s1.nextLine();
System.out.println("请输入密码");
String pwd=s1.nextLine();
if(username.equals(name)&&password.equals(pwd)) {
System.out.println("登陆成功");
break;
}
else {
System.out.println("登录失败你还有"+(j--)+"次机会");
i++;
}
}
s1.close();
}
}
2.定义一个字符串,查找该字符串中某个字符串出现的次数
例如:字符串:str="woaijavaniaijavadajiadouaijava"
子串: s="java"
输出:
java字符串出现了3次
使用的方法:indexOf() 某字符或字符串出现的位置
public class Search {
public static void main(String args[]) {
String str="woaijavaniaijavadajiadouaijava";
String s="java";
int count=0;
while(str.indexOf(s)>=0) {
str=str.substring(str.indexOf(s)+s.length());
count++;
}
System.out.println(s+"字符串出现了"+count+"次");
}
}
实验2 菜单的价格
一、实验目的
掌握怎样使用Scanner类的对象从字符串中解析程序所需要的数据。
二、实验内容
菜单的内容如下:“北京烤鸭:189元 西芹炒肉12.9元 酸菜鱼:69元 铁板牛柳:32元”编写一个Java应用程序,输出菜单中的价格数据,并计算出菜单的总价格。
import java.util.*;
public class ComputerPrice {
public static void main(String args[]) {
String menu= "北京烤鸭:189元 西芹炒肉:12.9元 酸菜鱼:69元 铁板牛柳:32元";
Scanner scanner =new Scanner(menu); //使用构造方法Scanner(String str)创建scanner,将menu传递给构造方法的参数
String regex = "[^0123456789.]+";
scanner.useDelimiter(regex); //scanner调用useDelimiter(String regex),将regex传递给该方法的参数
double sum=0;
while(scanner.hasNext()){
try{
double price = scanner.nextDouble(); //scanner调用nextDouble()返回数字单词
sum = sum+price;
System.out.println(price);
}
catch(InputMismatchException exp){
String t = scanner.next();
}
}
System.out.println("菜单总价格:"+sum+"元");
}
}
实验3 日期录入
一、实验目的
掌握Date和SimpleDateFormat类的使用
二、实验内容
1.从键盘接收字符串日期信息,并按照Date类型保存,要求日期格式为XXXX/XX/XX的格式录入,按照XXXX年XX月XX日的格式输出。
import java.util.Date;
import java.util.Scanner;
import java.text.SimpleDateFormat;
import java.text.ParseException;
public class Demo1 {
public static void main(String[] args) throws ParseException {
Scanner scanner=new Scanner(System.in);
System.out.println("输入的日期为:(格式为yyyy/MM/dd)");
String sr=scanner.next();
SimpleDateFormat t1=new SimpleDateFormat("yyyy/MM/dd");
Date date=t1.parse(sr);
SimpleDateFormat t2=new SimpleDateFormat("yyyy年MM月dd日");
String s=t2.format(date);
System.out.println("输出的日期为:"+s);
}
}
2.算一下你来到这个世界多少天?
import java.util.*;
import java.text.*;
public class Demo2 {
public static void main(String args[]) throws ParseException{
System.out.println("请输入你的出生日月(格式xxxx-xx-xx)");
Scanner sc=new Scanner(System.in);
String ss=sc.nextLine();
SimpleDateFormat t=new SimpleDateFormat("yyyy-MM-dd");
Date d=t.parse(ss);
long mytime=d.getTime();
long nowtime=System.currentTimeMillis();
long time=nowtime-mytime;
long day=time/24/60/60/1000;
System.out.println("你来到这个世界一共"+day+"天了。");
}
}