AddCust.java
// AddCust.java
import java.util.Scanner;
public class AddCust{
public static void main(String[] args){
System.out.println("欢迎光临马士兵教育会员系统");
System.out.println("添加用户信息");
//创建Scanner对象
Scanner sc = new Scanner(System.in);
System.out.println("请输入会员号码<4位整数>");
String number = sc.nextLine();
System.out.println("请输入会员生日<日/月>");
String birthday = sc.nextLine();
System.out.println("请输入会员积分");
String score = sc.nextLine();
if(number.length()==4){
System.out.println("会员信息如下");
System.out.println(number+"\t"+birthday+"\t"+score);
}else{
System.out.println("会员号码输入错误,请输入4位整数");
}
}
}
IfDemo.java
// IfDemo.java
import java.util.Scanner;
/*
分支结构:
单分支结构:
只做单一条件的判断,如果符合,做某些事情
双分支结构:
当做条件判断的时候,只有两种选择
多分支结构:
可以进行多个条件的判断,每个匹配项可以选择不同的执行结果
嵌套分支结构:
在分支结构中嵌套分支结构
switch多分支结构:
一般用作等值判断
*/
public class IfDemo{
public static void main(String[] args){
//单分支判断,Math.random()产生数据的范围是[0,1)
//得到0-5之间的随机数
//int i = (int)(Math.random()*6);
//if(i>3){
// System.out.println("值大于3");
//}
//System.out.println("number:"+i);
/*
double i = 6 * Math.random();
double j = 6 * Math.random();
double k = 6 * Math.random();
int count = (int) (i + j + k);
if(count > 15) {
System.out.println("今天手气不错");
}
if(count >= 10 && count <= 15) { //错误写法:10<count<15
System.out.println("今天手气很一般");
}
if(count < 10) {
System.out.println("今天手气不怎么样");
}
System.out.println("得了" + count + "分");*/
//双分支结构
/*
int r = 1;
double PI = 3.14;
double area = PI * r * r;
double length = 2 * PI * r;
if(area >= length){
System.out.println("面积大于等于周长");
}else{
System.out.println("周长大于面积");
}
*/
//Scanner
//创建文件扫描器对象,System.in表示的是标准输入,可以从控制台读取数据(装饰者模式)
//注意:每次读取回来的值都是字符串类型,需要进行类型转换
//Scanner sc = new Scanner(System.in);
//System.out.println("请输入数据");
//String str = sc.nextLine();
//System.out.println(str);
//多分支结构
/*
int age = (int)(Math.random()*100);
if(age<10){
System.out.println("儿童");
}else if(age<20){
System.out.println("少年");
}else if(age<30){
System.out.println("青年");
}else if(age<50){
System.out.println("中年");
}else if(age<70){
System.out.println("老年");
}else{
System.out.println("耄耋");
}
*/
//嵌套分支结构
/*
int time = (int)(Math.random()*40);
if(time<20){
System.out.println("恭喜进入决赛");
String sex = ((int)(Math.random()*2))==0?"girl":"boy";
if(sex=="girl"){
System.out.println("欢迎进入女子组");
}else{
System.out.println("欢迎进入男子组");
}
}else{
System.out.println("成绩太差,被淘汰");
}
*/
//switch多分支结构
/*注意:
1、每个case模块中要添加break,防止多次匹配
2、如果多个case中处理的逻辑代码块的功能一致,可以考虑只在最后添加一次处理
3、default表示默认选项,当所有的case不匹配的时候,会执行此选项
4、defult可以有,也可以没有
*/
int random = (int)(Math.random()*26);
char ch = (char)('a'+random);
switch(ch){
/*
case 'a':
System.out.println("元音:"+ch);
break;
case 'e':
System.out.println("元音:"+ch);
break;
case 'i':
System.out.println("元音:"+ch);
break;
case 'o':
System.out.println("元音:"+ch);
break;
case 'u':
System.out.println("元音:"+ch);
break;
case 'y':
System.out.println("半元音:"+ch);
break;
case 'w':
System.out.println("半元音:"+ch);
break;
default:
System.out.println("辅音:"+ch);*/
case 'a':
case 'e':
case 'i':
case 'o':
case 'u':
System.out.println("元音:"+ch);
break;
case 'y':
case 'w':
System.out.println("半元音:"+ch);
break;
default:
System.out.println("辅音:"+ch);
}
}
}
AgeRate.java
// AgeRate.java
import java.util.Scanner;
public class AgeRate{
public static void main(String[] args){
//定义Scanner对象
Scanner sc = new Scanner(System.in);
//存储大于30岁的人数
int ageUp = 0;
//存储小于30岁的人数
int ageDown = 0;
for(int i = 0;i<10;i++){
System.out.println("请输入第"+i+"位顾客的年龄:");
int age = sc.nextInt();
if(age>30){
ageUp++;
}else{
ageDown++;
}
}
System.out.println("超过30岁的人数比率是:"+(ageUp/10.0*100)+"%");
System.out.println("小于30岁的人数比率是:"+(ageDown/10.0*100)+"%");
}
}
ArgsDemo.java
// ArgsDemo.java
public class ArgsDemo{
public static void main(String[] args){
for(int i = 0;i<args.length;i++){
System.out.println(args[i]);
}
}
}
ArrayDemo.java
// ArrayDemo.java
/*
数组表示存储相同数据类型数据的有序集合
特点:
1、数组中存放的数据必须是同一个数据类型,可以是基本数据类型也可以是引用数据类型
2、数组在定义的时候必须要给定大小,且大小不可以改变
3、可以通过下标值来获取数据,下标从0开始
4、插入数组中的数据是有序集合,此时有序并不是指代大小排序,而是指插入的顺序
使用:
1、声明数组
2、创建空间
3、赋值
4、数组操作
*/
public class ArrayDemo{
public static void main(String[] args){
/*
//声明数组
int[] array;
//创建内存空间
array = new int[5];
//数组赋值
array[0] = 0;
array[1] = 1;
array[2] = 2;
array[3] = 3;
array[4] = 4;
//数组操作
System.out.println(array[0]);
//数组的几种创建方式
//1、声明并申请空间
int[] arr1 = new int[5];
int [] arr2 = new int[5];
int arr3[] = new int[5];
//2、声明数组并赋值
int[] arr4 = new int[]{1,2,3,4,5};
//3、直接初始化操作
int[] arr5 = {1,2,3};
//获取数组的长度
System.out.println(arr1.length);
//输入5个数值,求平均值
int[] arr6 = new int[]{56,98,34,89,100};
int sum = 0;
for(int i = 0;i<arr6.length;i++){
sum+=arr6[i];
}
System.out.println("平均值是:"+sum/arr6.length);
*/
/*
数组是引用类型,当创建完成数组之后相当于是在方法外定义了一个变量,此时数组中的值是有默认值的
默认是什么,取决于你定义的数组的类型:
int:0
String null
boolean false
数组可以根据下标获取值,但是获取的时候下标的范围是[0,length-1]
*/
int[] array = new int[5];
System.out.println(array[0]);
}
}
ArraySort.java
// ArraySort.java
import java.util.Arrays;
/*
数组相当于数据结构的一种实现,很多数据在进行存储的时候需要使用数组
数据结构:
线性表
非线性表
树
图
队列
栈
数组经常会用来考排序算法:
面试需求:
1、写出某种排序算法
冒泡排序
选择排序
插入排序
快速排序
2、排序算法的时间复杂度(空间复杂度)
衡量一个数据结构是否合适的衡量标准
3、排序算法的稳定性
排序之后的值跟排序之前的值位置是否发生变化
*/
public class ArraySort{
public static void main(String[] args){
//定义数组
int[] array = new int[]{4,1,7,2,9,3,5,8,6};
//将数组进行排序操作,从小到大
//冒泡排序
/*
for(int i=0;i<array.length;i++){
for(int j = 0;j<array.length-1-i;j++){
if(array[j]>array[j+1]){
int tmp = array[j];
array[j] = array[j+1];
array[j+1] = tmp;
}
}
}
*/
//选择排序
/*
for(int i = 0;i<array.length;i++){
for(int j = i+1;j<array.length;j++ ){
if(array[i]>array[j]){
int tmp = array[i];
array[i] = array[j];
array[j] = tmp;
}
}
}
*/
Arrays.sort(array);
for(int i = 0;i<array.length;i++){
System.out.print(array[i]+"\t");
}
}
}
BreakDemo.java
// BreakDemo.java
/*
生成0-100随机数,直到生成88为止,停止循环!
break:跳出本层循环,当包含多层循环的时候,break只能跳出内层循环,无法跳出外层循环
*/
public class BreakDemo{
public static void main(String[] args){
/*
int count = 0;
while(true){
int i = (int)(Math.random()*101);
if(i==88){
break;
}
count++;
System.out.println(count+"--"+i);
}
*/
//请打印输出(1,1)(1,2)(1,3)...直到输出(6,6)停止
for(int i = 1;i<10;i++){
for(int j =1;j<10;j++){
System.out.println("("+i+","+j+")");
if(i==6&&j==6){
return;
}
}
}
}
}
BuyChicken.java
// BuyChicken.java
public class BuyChicken{
public static void main(String[] args){
for(int i = 0;i<=20;i++){
for(int j = 0;j<=34;j++){
for(int k = 0;k<=300;k++){
if(((i+j+k)==100) && ((5*i+3*j+ k/3)==100) && (k%3==0)){
System.out.println("¹«¼¦£º"+i+"\tĸ¼¦£º"+j+"\tС¼¦£º"+k);
}
}
}
}
}
}
ContinueDemo.java
// ContinueDemo.java
/*
把100~150之间不能被3整除的数输出:
continue:跳出本次循环
*/
public class ContinueDemo{
public static void main(String[] args){
for(int i = 100;i<150;i++){
if(i%3==0){
continue;
}
System.out.println(i);
}
}
}