Java学习笔记 7
-Java案例 P62-P65
案例一:买飞机票
//练习switch结构
public class Main{
public static double calculate(double price,int month,String type){
if(month>=5&&month<=10){
switch(type){
case "头等舱":
price*=0.9;
break;
case "经济舱":
price*=0.85;
break;
}
}
else{
if(month>=5&&month<=10){
switch(type){
case "头等舱":
price*=0.7;
break;
case "经济舱":
price*=0.65;
break;
}
}
}
return price;
}
public static void main(String args[]){
double price=calculate(1000,8,"经济舱");
System.out.println("该机票优惠后价格为"+price);
}
}
案例二:开发验证码
//练习random和switch
import java.util.Random;
import java.util.Scanner;
public class Main{
public static String CreateCode(int n){
Random r=new Random();
String code="";
for(int i=0;i<n;i++){
int type=r.nextInt(3);
switch(type){
case 0://数字字符
code+=r.nextInt(10);
break;
case 1://大写字母
code+=(char)(r.nextInt(26)+65);
break;
case 2://小写字母
code+=(char)(r.nextInt(26)+97);
break;
}
}
return code;
}
public static void main(String args[]){
Scanner sc=new Scanner(System.in);
int n=sc.nextInt();
System.out.println(CreateCode(n));
}
}
案例三:评委打分
//练习数组使用
import java.util.Scanner;
public class Main{
public static void main(String args[]){
int n;
Scanner sc=new Scanner(System.in);
n=sc.nextInt();
int [] score=new int [n+5];
for(int i=0;i<n;i++){
score[i]=sc.nextInt();
}
int max=score[0],min=score[0],sum=0;
for(int i=0;i<n;i++){
sum+=score[i];
if(score[i]>max) max=score[i];
if(score[i]<min) min=score[i];
}
sum-=max;sum-=min;
System.out.println(1.0*sum/(n-2));
}
}
案例四:数字加密
//找到了类似于vector的东西,array list的语法更繁琐,但目前来看vector有的功能它也有
import java.util.*;
public class Main{
public static void main(String args[]){
Scanner sc=new Scanner(System.in);
int n=sc.nextInt();
List <Integer> num=new ArrayList<Integer>();
while(n!=0) {
num.add(n%10);
n/=10;
}
for(int i=0;i<num.size();i++){
num.set(i,(num.get(i)+5)%10);
}
for(int i=0;i<num.size();i++) System.out.print(num.get(i));
}
}
案例五:数组拷贝
public static int[] copyarr(int[] arr){
int[] ans=new int[arr.length];
for(int i=0;i<arr.length;i++) ans[i]=arr[i];
return ans;
}
案例六:抢红包
import java.util.*;
public class Main{
public static void gift(int[] money){
Scanner sc=new Scanner(System.in);
Random r=new Random();
for(int i= money.length;i>0;i--){
System.out.println("输入任意字符开始抽奖!");
sc.nextInt();
int idx=r.nextInt(i);
System.out.println("恭喜抽中"+money[idx]+"元!");
money[idx]=money[i-1];
}
}
public static void main(String args[]){
int[] money={9,666,188,520,999};
gift(money);
}
}