黑马程序员技术交流社区
标题: javaEE学习笔记 [打印本页]
作者: Nikola 时间: 2018-4-7 22:50
标题: javaEE学习笔记
第六天内容:
Eclipse的断点调试,用来查看程序的执行流程和查找BUG,所谓的哪里不会点哪里,基础班阶段应该基本不会使用。
其次就是结合之前所学知识进行基础语法的练习。
案例一:键盘录入月份,输出对应的季节(if…else或switch实现)
利用case的穿透性,代码更简洁!
packagetest;
importjava.util.Scanner;
/*
* 键盘录入月份,输出对应的季节(if…else或switch实现)
*/
publicclass Test18 {
public static void main(String[] args){
Scanner sc = newScanner(System.in);
System.out.println("请输入一个月份:");
int month = sc.nextInt();
switch (month) {
case 12:
case 1:
case 2:
System.out.println("这个月是冬季");
break;
case 3:
case 4:
case 5:
System.out.println("这个月是春季");
break;
case 6:
case 7:
case 8:
System.out.println("这个月是夏天");
break;
case 9:
case 10:
case 11:
System.out.println("这个月是秋天");
break;
default:
System.out.println("你输入的月份不合法,请重新输入");
break;
}
}
}
案例二:打印5位数中所有的回文数
packagetest;
/*需求:打印5位数中的所有回文数。
* 什么是回文数呢?举例:12321是回文数,个位与万位相同,十位与千位相同
* */
publicclass Test19 {
public static void main(String[] args){
for(inti=10000;i<99999;i++) {
int ge=i%10;
int shi=i/10%10;
int bai=i/10/10%10;
intqian=i/10/10/10%10;
intwan=i/10/10/10/10%10;
if((ge==wan)&&(shi==qian)){
System.out.println(i);
}
}
}
}
案例三:求数组中满足要求的元素和,需求:(1)定义一个int类型的一维数组,内容为{171,72,19,16,118,51,210,7,18};(2)求出该数组中满足要求的元素和:求和的元素的个位和十位不能包含7,并且只能为偶数。
package test;
public class Test20 {
public static voidmain(String[] args) {
int []arr={171,72,19,16,118,51,210,7,18};//定义一个int类型的数组
//定义一个变量用于符合要求的数组元素求和
int sum=0;
//遍历数组
for(inti=0;i<arr.length;i++) {
if((arr%10!=7)&&(arr/10%10!=7)&&(arr%2==0)){
System.out.println(arr);//查看符合要求的元素有哪些
sum+=arr;
}
}
System.out.println("满足要求的数组元素求和为:"+sum);
}
}
案例四:裁判打分。需求:在编程竞赛中,有6个评委为参赛的选手打分,分数为0-100的整数分。选手的最后得分为:去掉一个最高分和一个最低分后,其余4个选手的平均值。请写代码实现。(不考虑小数部分)
packagetest;
importjava.util.Scanner;
importorg.omg.CORBA.PUBLIC_MEMBER;
/*
* 裁判打分。需求:在编程竞赛中,有6个评委为参赛的选手打分,分数为0-100的整数分。
* 选手的最后得分为:去掉一个最高分和一个最低分后,其余4个选手的平均值。请写代码实现。(不考虑小数部分)
*/
publicclass Test21 {
public static void main(String[] args){
int[] arr = new int[6];
Scanner sc = newScanner(System.in);
for (int i = 0; i <arr.length; i++) {
System.out.println("请输入第" + (i + 1) + "个评委的打分:");
arr = sc.nextInt();
}
int min = getMin(arr);
int max = getMax(arr);
int sum = getSum(arr);
System.out.println("4个选手的平均分是:" + (sum - max - min) /(arr.length - 2));
}
// 定义方法求打分中的最大值
public static int getMax(int[] arr) {
int max = arr[0];
for (int i = 0; i <arr.length; i++) {
if (max < arr) {
max = arr;
}
}
return max;
}
// 定义方法求打分中的最小值
public static int getMin(int[] arr) {
int min = arr[0];
for (int i = 0; i <arr.length; i++) {
if (min > arr) {
min = arr;
}
}
return min;
}
// 求和
public static int getSum(int[] arr) {
int sum = 0;
for (int i = 0; i <arr.length; i++) {
sum += arr;
}
return sum;
}
}
案例5:数组元素查找,需求:数组元素查找(查找指定元素第一次在数组中出现的索引)
(1)给定数组int[] arr = {5,7,3,2,5};
(2)要查询的元素通过键盘录入的方式确定
(3)定义一个查找数组元素第一次出现位置的方法(注,要查找的元素就是键盘录入的数据)
package test;
/*
* 数组基本查找
* 需求:数组元素查找(查找指定元素第一次在数组中出现的索引)
*(1)给定数组int[] arr = {5,7,3,2,5};
*(2)要查询的元素通过键盘录入的方式确定
*(3)定义一个查找数组元素第一次出现位置的方法(注,要查找的元素就是键盘录入的数据)
*/
importjava.util.Scanner;
public class test22 {
public static void main(String[] args) {
int[] arr = { 5, 7, 3, 2, 5 };
getIndex(arr);
}
// 定义一个方法求数组元素在数组中出现的位置
public static void getIndex(int[] arr) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个整数:");
int number = sc.nextInt();
boolean flag = false;
// 遍历数组,如果number==arr,则输出i值,即arr在数组中第一次出现的位置
for (int i = 0; i < arr.length; i++) {
if (number == arr[i]) {
boolean falg=false;
System.out.println("数组元素在数组中首次出现的位置是:" + i);
break;
}
}
if (!flag) {
System.out.println("数组中不存在这样的数");
}
}
}
案例6:数组反转。需求:(1)键盘录入5个int类型的数据存储数组arr中;(2)定义方法将arr数组中的内容反转;(3)定义方法对反转后的数组进行遍历。
package test;
importjava.util.Scanner;
/*
* 数组反转。
* 需求:(1)键盘录入5个int类型的数据存储数组arr中;
* (2)定义方法将arr数组中的内容反转;
* (3)定义方法对反转后的数组进行遍历。
*/
public class Test23 {
public static void main(String[] args) {
int [] arr=new int[5];
Scanner sc=new Scanner(System.in);
for(int i=0;i<5;i++) {
System.out.println("请输入第"+(i+1)+"个元素:");
arr[i]=sc.nextInt();
}
//反转前
printArray(arr);
//调用方法将数组元素反转
fanZhuan(arr);
//遍历反转后数组
printArray(arr);
}
public static void printArray(int [] arr) {
System.out.print("[");
for(int i=0;i<arr.length;i++) {
if(i==arr.length-1) {
System.out.println(arr[i]+"]");
}else {
System.out.print(arr[i]+",");
}
}
}
public static void fanZhuan(int [] arr) {
for(int start=0,end=arr.length-1;start<=end;start++,end--) {
int temp=arr[start];
arr[start]=arr[end];
arr[end]=temp;
}
}
}
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |