1.参数传递
package cn.itcast.day06练习一天.参数传递;
/*
参数为基本数据类型
基本数据类型作为方法参数传递的时候
传递的是值(不能将自己方法内部的变量给别的方法,但是能将自己方法内部变量的值通过参数传递给别的方法)
局部变量:
定义在方法中,或者方法的参数位置
作用范围:
只服务于自己的方法,别的方法使用不了
*/
public class 参数为基本数据类型 {
public static void main(String[] args) {
int a=10;
int b=20;
System.out.println(a+"..."+b);
method(a,b);
System.out.println(a+"..."+b);
}
public static void method(int a,int b){
a+=10;
b+=20;
System.out.println(a+"..."+b);
}
}
package cn.itcast.day06练习一天.参数传递;
/*
引用数据类型作为方法的参数传递
传递的是地址值
*/
public class 引用数据类型作为方法的参数传递 {
public static void main(String[] args) {
int []arr={10,20};
System.out.println(arr[0]+"..."+arr[1]);
method(arr);
System.out.println(arr[0]+"..."+arr[1]);
}
public static void method(int arr[]){
arr[0]+=10;
arr[1]+=20;
System.out.println(arr[0]+"..."+arr[1]);
}
}
2.练习题
package cn.itcast.day06练习一天.练习题;
public class A判断数组内容是否相同 {
public static void main(String[] args) {
int []arr1={11,22,33,44,55};
int []arr2={11,22,22,44,5};
boolean result=method(arr1,arr2);
System.out.println(result);
}
public static boolean method(int []arr1,int []arr2){
if(arr1.length!=arr2.length){
return false;
}
for (int i = 0; i < arr1.length; i++) {
if(arr1[i]!=arr2[i]){
return false;
}
}
return true;
}
}
package cn.itcast.day06练习一天.练习题;
import java.util.Scanner;
/*
键盘录入6个数(录入的时候要先提示”请输入第几个数”),将录入的6个数存储到数组中。
统计第一个录入的数字在数组中出现的次数,将统计出来的个数打印到控制台上
步骤:
1.创建Scanner对象
2.创建数组,长度为6
3.利用for循环,循环6次,循环录入,循环存
4.定义一个变量 count,来计数
5.遍历数组,让0索引的元素和遍历出来的元素做比较
如果相等,count++
*/
public class A录入第一个数且统计出现的次数 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
int []arr=new int[6];
// 利用for循环,循环6次,循环录入,循环存
for (int i = 0; i < arr.length; i++) {
System.out.println("请你输入第"+(i+1)+"个数");
int num=sc.nextInt();
arr[i]=num;
}
int count=0;
for (int i = 0; i < arr.length; i++) {
if(arr[0]==arr[i]){
count++;
}
}
System.out.println("第一个输入的数一共有"+count+"个");
}
}
package cn.itcast.day06练习一天.练习题;
//已知一个数组 arr = {19, 28, 37, 46, 50}; 用程序实现把数组中的元素值反转(在原数组中操作,不能定义第二个数组),反转后的数组 arr = {50, 46, 37, 28, 19}; 并在控制台输出反转后的数组元素
public class A数组反转01 {
public static void main(String[] args) {
//定义一个数组,用静态初始化完成数组元素的初始化
int[] arr = {19, 28, 37, 46, 50};
//调用反转的方法
reverse(arr);
//遍历数组
printArray(arr);
}
//定义反转方法
public static void reverse(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;
}
}
//定义用于打印数组的方法
public static void printArray(int[] arr) {
System.out.print("[");
for (int x = 0; x < arr.length; x++) {
if (x == arr.length - 1) {
System.out.print(arr[x]);
} else {
System.out.print(arr[x] + ", ");
}
}
System.out.println("]");
}
}
package cn.itcast.day06练习一天.练习题;
public class A数组反转02 {
public static void main(String[] args) {
int []arr={1,2,3,4,5};
/*
初始化变量:
int min = 0,int max = arr.length-1
比较:
min<max
步进表达式:
min++,max--
方法体:
int temp = arr[min];
arr[min] = arr[max];
arr[max] = temp;
*/
for(int min=0,max=arr.length-1;min<max;min++,max--){
int temp=arr[min];
arr[min]=arr[max];
arr[max]=temp;
}
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i]+" ");
}
}
}
package cn.itcast.day06练习一天.练习题;
/*
有6个评委为参赛的选手打分,分数为0-100的整数分
选手的最后得分为:去掉一个最高分和一个最低分后 。的4个评委平均值 (不考虑小数部分)。
*/
import java.util.Scanner;
public class A评委打分01 {
public static void main(String[] args) {
int []arr=new int[6];
Scanner sc=new Scanner(System.in);
//由于是6个评委打分,所以,接收评委分数的操作,用循环改进
for (int i = 0; i < arr.length; i++) {
System.out.println("请输入第"+(i+1)+"个评委的打分:");
arr[i]=sc.nextInt();
}
//调用方法获取数组中的和,最大值,最小值
int sum=getSum(arr);
int max=getMax(arr);
int min=getMin(arr);
int avg=(sum-max-min)/(arr.length-2);
System.out.println("选手的最终得分是:"+avg);
}
//定义求和方法
public static int getSum(int []arr){
int sum=0;
for (int i = 0; i < arr.length; i++) {
sum+=arr[i];
}
return sum;
}
//定义求最大值方法
public static int getMax(int []arr){
int max=arr[0];
for (int i = 0; i < arr.length; i++) {
if(arr[i]>max){
max=arr[i];
}
}
return max;
}
//定义求最小值方法
public static int getMin(int []arr){
int min=arr[0];
for (int i = 0; i < arr.length; i++) {
if(arr[i]<min){
min=arr[i];
}
}
return min;
}
//定义遍历数组方法
public static void printArray(int[] arr) {
System.out.print("[");
for (int x = 0; x < arr.length; x++) {
if (x == arr.length - 1) {
System.out.print(arr[x]);
} else {
System.out.print(arr[x] + ", ");
}
}
System.out.println("]");
}
}
package cn.itcast.day06练习一天.练习题;
import java.util.Scanner;
public class A评委打分02 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
int []arr=new int[6];
//循环打分,循环存到数组中
for (int i = 0; i < arr.length; i++) {
System.out.println("请你输入第"+(i+1)+"个数");
int num = sc.nextInt();
arr[i]=num;
}
//调用
int sum = getSum(arr);
int max = getMax(arr);
int min = getMin(arr);
int result = (sum - min - max) / (arr.length - 2);
System.out.println("最终得分为:"+result);
}
//求和
public static int getSum(int[] arr){
int sum = 0;
for (int i = 0; i < arr.length; i++) {
sum+=arr[i];
}
return sum;
}
//最大值
public static int getMax(int [] arr){
int max=arr[0];
for (int i = 0; i < arr.length; i++) {
if(max<arr[i]){
max=arr[i];
}
}
return max;
}
//求最小值
public static int getMin(int[] arr){
int min = arr[0];
for (int i = 1;i<arr.length;i++){
if (min>arr[i]){
min = arr[i];
}
}
return min;
}
}
package cn.itcast.day06练习一天.练习题;
import java.util.Scanner;
public class A键入数并找索引值01 {
public static void main(String[] args) {
//定义一个数组,用静态初始化完成数组元素的初始化
int[] arr = {19, 28, 37, 46, 50};
//键盘录入要查找的数据,用一个变量接收
Scanner sc = new Scanner(System.in);
System.out.println("请输入要查找的数据:");
int number = sc.nextInt();
//调用方法
int index = getIndex(arr, number);
//输出索引变量
System.out.println("index: " + index);
}
//查找指定的数据在数组中的索引
public static int getIndex(int[] arr, int number) {
//定义一个索引变量,初始值为-1
int index = -1;
//遍历数组,获取到数组中的每一个元素
for(int x=0; x<arr.length; x++) {
//拿number和数组中的每一个元素进行比较
//如果值相同,就把该值对应的索引赋值给索引变量,并结束循环
if(arr[x] == number) {
index = x;
break;
}
}
//返回索引
return index;
}
}
package cn.itcast.day06练习一天.练习题;
import java.util.Scanner;
//已知一个数组 arr = {19, 28, 37, 46, 50}; 键盘录入一个数据。
// 定义一个方法,完成查找该数据在数组中的索引,并在控制台输出找到的索引值。如果没有查到,则输出-1.
public class A键入数并找索引值02 {
public static void main(String[] args) {
int []arr={19, 28, 37, 46, 50};
Scanner sc=new Scanner(System.in);
System.out.println("请您输入要查找的数据:");
int num = sc.nextInt();
int index=0;
for (int i = 0; i < arr.length; i++) {
if(arr[i]==num){
System.out.println(i);
}
index++;
}
if(index==0){
System.out.println(-1);
}
}
}
package cn.itcast.day06练习一天.练习题;
public class 逢七过 {
public static void main(String[] args) {
for (int i = 1; i <=100 ; i++) {
if(i%10==7||i/10%10==7||i%7==0){
System.out.println(i);
}
}
}
}