Java基础知识复习一
复习基础
/*
* switch语句格式:
* switch(表达式){
* case 值1:
* 语句体1:
* case 值2:
* 语句2:
* break;
* ...
* default:
* 语句体n+1;
* break;
* }
* 格式解释:
* 表达式:byte,short,int,char
* JDK5以后可以是枚举
* JDK7以后是是字符串
* case后面的值:就是用来和表达式的值进行匹配的内容
* break:表示中断
* default:所有的值都不匹配的时候,就执行default
* 执行流程:
* A:首先计算表达式的值
* B:拿着这个计算出来的值,依此和case后面的值进行比较,一旦有匹配的就执行对应的语句体,在执行过程中,遇到break结束
* C:如果所有的case都不匹配,就执行语句体
* */
public static void main(String[] args) {
//
//创建键盘录入对象
Scanner sc = new Scanner(System.in);
//接收数据
System.out.println("请输入一个数字(1-5)");
int weekday =sc.nextInt();
switch(weekday){
case 1:
System.out.println("星期一");
break;
case 2:
System.out.println("星期二");
break;
case 3:
System.out.println("星期三");
break;
case 4:
System.out.println("星期四");
break;
case 5:
System.out.println("星期五");
break;
default:
System.out.println("你输入的数据有误");
}
}
/*
* 求出1-100之间偶数和
*
* 分析:
* A:定义求和变量,初始化值是0
* B:获取1-100之间的数据,用循环实现
* C:拿到每一个数据先进行判断是否是偶数
* 如果是,就累加到求和变量
* D:输出求和变量
* */
public static void main(String[] args) {
//定义求和变量,初始化值是0
int sum =0;
//获取1-100之间的数量,用循环实现
for(int x=1; x<=100;x++){
//拿到每一个数据进行判断时候是偶数
if(x%2 == 0){
//如果是,就累加到求和变量
sum += x;
}
}
System.out.println(sum+"578129842");
}
/*
* 在控制台输出所有的“水仙花数”
* 水仙花数?
* 所谓的水仙花数是指一个三位数,其个位数数字的立方和等于该数本身。
* 举例:153就是一个水仙花数。
*
* 分析:
* A:三位数其实是告诉了我们水仙花数的范围,用for循环实现
* B:获取一个三位数的个位,百位
* C:
* */
public static void main(String[] args) {
//
for(int x=100; x<1000; x++){
int ge = x%10;
int shi = x/10%10;
int bai = x/10/10%10;
if((ge*ge*ge+shi*shi*shi+bai*bai*bai)==x){
System.out.println(x);
}
}
}
/*
* while循环的语句格式:
* while(判断语句){
* 循环体语句;
* }
* 扩展格式;
* 初始化语句;
* while(判断条件语句){
* 循环体语句;
* 控制条件语句;
* }
*
*
* */
public static void main(String[] args) {
//在控制台输出10次HelloWorld
//for循环实现
for(int x=1; x<=10;x++){
System.out.println("Hello");
}
//用while循环改写
int x=1;
while(x<=10){
System.out.println("Hello");
x++;
}
}
/*
* 求1-100之和
* 练习:统计水仙花的个数
*
* */
public static void main(String[] args) {
//for循环实现
//定义求和变量
int i=0;
int sum=0;
while(i<=100){
sum += i;
i++;
}
System.out.println(sum);
}
数组
/*
* 获取数组最大值
*
* */
public static void main(String[] args) {
//定义数组
int[] arr={12,15,24,10,34,99};
//定义参照物
int max =arr[0];
//遍历数组,获取除了0索引以外的元素,进行比较
for(int i=0;i<arr.length;i++){
if(arr[i]>max){
max = arr[i];
}
}
System.out.println(max);
//最小值
for(int j=0 ;j<arr.length; j++){
if(arr[j]<max){
max = arr[j];
}
}
System.out.println(max);
}
/*
* 二位数组:其实就是元素为一维数组的数组
* 定义格式:
* 1:数组类型【】【】数组名;(推荐的方式)
* 2:数据类型数组名【】【】;
* 3:数据类型【】 数组名【】4
* 初始化:
* 1:动态初始化
* 数据类型【】【】 数组名= new 数据类型【m】【n】
* m表示的是二维数组中一维数组的个数
* n表示的一维数组的元素个数
* 2:静态初始化
* 数据类型【】【】 数组名=new 数据类型【】【】{{}{}...{}}
* 简化格式 数组名={{}{}...{}}
*
* */
public static void main(String[] args) {
int[][] arr={{1,2,3},{4,5,6},{7,8}};
//System.out.println(arr[1][1]);
for(int i=0;i<arr.length;i++){
for(int j=0;j<arr[i].length;j++){
System.out.print(arr[i][j]);
}
System.out.println();
}
}
/*
* 数组:储存同一种类类型的多个元素的容器
*
* 定义格式:
* 1:数组类型[] 数组名;
* 2:数组类型[] 数组名[]
* 举例:
* int[] arr;定义一个int类型的,数组
* int arr[];定义一个int类型的变量,变量名是arr数组
* 数组初始化:
* 1:所谓的初始化就是,数组开辟内存空间,并为数组中的每一个元素赋予初始值
* 2:两种初始化方式
* 1.动态初始化 只给出长度,系统给出初始化值
* 2.静态初始化 给出初始化值,有系统给出长度
* 动态初始化:
* 数据类型【】 数组名 = new 数组类型【数组类型】
* */
public static void main(String[] args) {
//动态
int[] arr = new int[3];
/*
* 左边:
* int:说明数组中的元素类型是int类型
* 【】:说明这是一个数组
* arr:这是数组的名称
* 右边:
* new:
* int:说明数组中的元素类型是int类型
* 【】:说名这是一个数组
* 3:数组的长度,其实就是数组中的元素个数
* */
//输出数组名:
System.out.println("arr"+arr);//arr[I@1c78e57地址值
//其实数组中的每个元素都是有编号的,编号从零开始,最大的编号是数组的长度-1
//通过数组名和编号的配合使用我们就可以获得指定编号的元素值
System.out.println(arr[0]);
System.out.println(arr[1]);
System.out.println(arr[2]);
}
注意:ArrayIndexOutOfBoundsException:越界异常

浙公网安备 33010602011771号