实验8.1 检索简历
【实验要求】简历的内容如下:“姓名:张三 出生时间:1989.10.16。个人网站:http://www.zhang.com。身高:1.85cm,体重:72kg”。
编写一个Java应用程序,判断简历中的姓名是否姓“张”,单独输出简历中的出生日期和个人网站,并判断简历中的身高是否大于180cm,体重是否小于75kg。
【实验步骤】
FindMess.java
public class FindMess {
public static void main(String args[]) {
String mess ="姓名:张三 出生时间:1989.10.16。个人网站:http://www.zhang.com。"+"身高:185 cm,体重:72 kg";
int index = mess.indexOf(":"); //mess调用indexOf(String s)方法返回字符串中首次出现冒号的位置
String name = mess.substring(index+1);
if(name.startsWith("张")) {
System.out.println("简历中的姓名姓\"张\" ");
}
index = mess.indexOf(":",index+1);// mess调用indexOf(String s,int start)返回字符串中第2次出现冒号的位置
String date = mess.substring(index+1,index+11);
System.out.println(date);
index = mess.indexOf(":", index+1);
int heightPosition =mess.indexOf("身高");// mess调用indexOf(String s)返回字符串中首次出现身高的位置
String personNet = mess.substring(index+1, heightPosition-1);
System.out.println(personNet);
index = mess.indexOf(":",index+1); // mess调用indexOf(String s,int start)返回字符串中身高后面的冒号位置
int cmPosition = mess.indexOf("cm");
String height = mess.substring(index+1, cmPosition);
height = height.trim();
int h = Integer.parseInt(height);
if(h>=180) {
System.out.println("简历中的身高" + height + "大于或等于180 cm");
}
else {
System.out.println("简历中的身高" + height + "小于180 cm");
}
index = mess.indexOf(":",index+1); // mess调用lastIndexOf(String s)返回字符串中最后一个冒号位置
int kgPosition = mess.indexOf("kg");
String weight = mess.substring(index+1, kgPosition);
weight = weight.trim();
int w = Integer.parseInt(weight);
if(w>=75) {
System.out.println("简历中的体重" + weight + "大于或等于75 kg" );
}
else {
System.out.println("简历中的体重" + weight + "小于75 kg" );
}
}
}
运行结果:
实验8.2 main( )方法的参数化
【实验要求】应用程序中main( )方法的参数args能够接受用户从键盘输入的字符序列。例子中,求若干个数的代数和,并分别输出代数的整数部分和小数部分。
【实验步骤】
public class Example8_4 {
public static void main(String args[]) {
int m = 7;
String binaryString = Integer.toBinaryString(m);
System.out.println(m+"的二进制:");
System.out.println(binaryString);
m = -8;
binaryString =Integer.toBinaryString(m); //将m的二进制的String对象赋值给binaryString
System.out.println(m+"的二进制(补码):");
System.out.println(binaryString);
double sum=0,item=0;
boolean computable=true;
for(String s:args) {
try{
item=Double.parseDouble(s); //将s转换成double型数据,并赋值给item
sum=sum+item;
}
catch(NumberFormatException e) {
System.out.println("您键入了非数字字符:"+e);
computable=false;
}
}
if(computable) {
System.out.println("sum="+sum);
String numberStr = String.valueOf(sum);
int dotPosition = numberStr.indexOf(".");
String integerPart = numberStr.substring(0,dotPosition);
String decimalPart = numberStr.substring(dotPosition+1);
System.out.println("整数部分是:"+integerPart);
System.out.println("小数部分是:"+decimalPart);
}
}
}
运行结果: