学习视频链接:https://www.bilibili.com/video/BV17F411T7Ao
定义一个方法,该方法能够找出两个小数中的较小值并返回。在主方法中调用方法进行测试。
/**
* @ClassName: codeHomework01
* @Author: Kox
* @Data: 2023/1/10
* @Sketch: 题目1
*/
public class codeHomework01 {
public static void main(String[] args) {
System.out.println(getMin(1, 2));
}
public static double getMin(double a, double b) {
double result = a < b ? a : b;
return result;
}
}
定义一个方法,该方法能够找出三个整数中的最大值并返回。在主方法中调用方法测试执行。
/**
* @ClassName: codeHomework02
* @Author: Kox
* @Data: 2023/1/10
* @Sketch: 题目2
*/
public class codeHomework02 {
public static void main(String[] args) {
System.out.println(getMax(11, 22, 33));
}
public static int getMax(int a, int b, int c) {
int result = a > b ? a > c ? a : c : b > c ? b : c;
return result;
}
}
在主方法中通过键盘录入三个整数。定义一个方法,方法接收三个整数变量,在方法中从大到小依次打印三个变量。执行效果如下:
请输入第一个整数:10
请输入第二个整数:30
请输入第三个整数:20
从大到小的顺序是: 30 20 10
import java.util.Scanner;
/**
* @ClassName: codeHomework03
* @Author: Kox
* @Data: 2023/1/10
* @Sketch: 题目3
*/
public class codeHomework03 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("请输入第一个整数:");
int num1 = sc.nextInt();
System.out.print("请输入第二个整数:");
int num2 = sc.nextInt();
System.out.print("请输入第三个整数:");
int num3 = sc.nextInt();
method(num1, num2 , num3);
}
public static void method(int num1, int num2, int num3) {
int max = num1 > num2 ? num1 > num3 ? num1 : num3 : num2 > num3 ? num2 : num3;
int min = num1 < num2 ? num1 < num3 ? num1 : num3 : num2 < num3 ? num2 : num3;
int mid = max - min;
System.out.println("从大到小的顺序是:" + max + " " + mid + " " + min);
}
}
数字是有绝对值的,负数的绝对值是它本身取反,非负数的绝对值是它本身。请定义一个方法,方法能够得到小数类型数字的绝对值并返回。请定义方法并测试。
/**
* @ClassName: codeHomework04
* @Author: Kox
* @Data: 2023/1/10
* @Sketch: 题目4
*/
public class codeHomework04 {
public static void main(String[] args) {
System.out.println(getAbs(-1.2));
System.out.println(getAbs(10.1));
}
public static double getAbs(double num) {
double result = num >= 0 ? num : -num;
return result;
}
}
键盘录入一个正整数
定义一个方法,该方法的功能是计算该数字是几位数字,并将位数返回
在main方法中打印该数字是几位数
演示格式如下:
(1)演示一:
请输入一个整数:1234
控制台输出:1234是4位数字
(2)演示二:
请输入一个整数:34567
控制台输出:34567是5位数字
import java.util.Scanner;
/**
* @ClassName: codeHomework05
* @Author: Kox
* @Data: 2023/1/10
* @Sketch: 题目5
*/
public class codeHomework05 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int num = sc.nextInt();
System.out.println(digit(num));
}
public static int digit(int num) {
int count = 1;
while (true) {
if (num / 10 != 0) {
count++;
num = num / 10;
} else {
break;
}
}
return count;
}
}
需求:
定义一个方法equals(int[] arr1,int[] arr2).
功能:
比较两个数组是否相等(长度和内容均相等则认为两个数组是相同的)
/**
* @ClassName: codeHomework06
* @Author: Kox
* @Data: 2023/1/10
* @Sketch: 题目6
*/
public class codeHomework06 {
public static void main(String[] args) {
int[] arr1 = {1, 2, 4, 5};
int[] arr2 = {1, 2, 3, 5};
System.out.println(equals(arr1, arr2));
}
public static String equals(int[] arr1, int[] arr2) {
int count = 0;
String result = "";
if (arr1.length == arr2.length) {
for (int i = 0; i < arr1.length; i++) {
if (arr1[i] == arr2[i]) {
count++;
}
}
} else {
result = "不相等";
}
result = count == arr1.length ? "相等" : "不相等";
return result;
}
}
需求:
定义一个方法fill(int[] arr,int value)
功能:
将数组arr中的所有元素的值改为value
import java.util.Arrays;
/**
* @ClassName: codeHomework07
* @Author: Kox
* @Data: 2023/1/10
* @Sketch: 题目7
*/
public class codeHomework07 {
public static void main(String[] args) {
int[] arr = {1, 2 , 3};
System.out.println(Arrays.toString(fill(arr, 2)));
}
public static int[] fill(int[] arr, int value) {
for (int i = 0; i < arr.length; i++) {
arr[i] = value;
}
return arr;
}
}
需求:
定义一个方法fill(int[] arr,int fromIndex,int toIndex,int value)
功能:
将数组arr中的元素从索引fromIndex开始到toIndex(不包含toIndex)对应的值改为value
import java.util.Arrays;
/**
* @ClassName: codeHomework08
* @Author: Kox
* @Data: 2023/1/10
* @Sketch: 题目8
*/
public class codeHomework08 {
public static void main(String[] args) {
int[] arr = {1, 2, 3, 4, 5 ,6 ,7 ,8 ,9, 10};
System.out.println(Arrays.toString(fill(arr, 1, 6, 2)));
}
public static int[] fill(int[] arr, int fromIndex, int toIndex, int value) {
for (int i = fromIndex; i < toIndex; i++) {
arr[i] = value;
}
return arr;
}
}
需求:
定义一个方法copyOf(int[] arr, int newLength)
功能:
将数组arr中的newLength个元素拷贝到新数组中,并将新数组返回,从索引为0开始
import java.util.Arrays;
/**
* @ClassName: codeHomework09
* @Author: Kox
* @Data: 2023/1/10
* @Sketch: 题目9
*/
public class codeHomework09 {
public static void main(String[] args) {
int[] arr = {0, 1, 2, 3, 4, 5 ,6 ,7 ,8 ,9, 10};
System.out.println(Arrays.toString(copyOf(arr, 4)));
}
public static int[] copyOf(int[] arr, int newLength) {
int[] brr = new int[newLength];
int index = 0;
for (int i = 0; i < newLength; i++) {
brr[index] = arr[i];
index++;
}
return brr;
}
}
需求:
定义一个方法copyOfRange(int[] arr,int from, int to)
功能:
将数组arr中从索引from(包含from)开始,到索引to结束(不包含to)的元素复制到新数组中,
并将新数组返回。
一个大V直播抽奖,奖品是现金红包,分别有{2,588,888,1000,10000}五个奖金。请使用代码模拟抽奖,打印出每个奖项,奖项的出现顺序要随机且不重复。打印效果如下:(随机顺序,不一定是下面的顺序)
888元的奖金被抽出
588元的奖金被抽出
10000元的奖金被抽出
1000元的奖金被抽出
2元的奖金被抽出
import java.util.Random;
/**
* @ClassName: codeHomework11
* @Author: Kox
* @Data: 2023/1/10
* @Sketch: 题目11
*/
public class codeHomework11 {
public static void main(String[] args) {
int[] arr = {2, 588, 1000, 10000};
int[] brr = new int[arr.length];
Random r = new Random();
int flag = 0;
while (flag < arr.length) {
int index = r.nextInt(arr.length);
if (returnNum(brr, arr[index])) {
brr[flag] = arr[index];
System.out.println(brr[flag] + "元的奖金被抽出");
flag++;
}
}
}
public static boolean returnNum(int[] arr, int num) {
for (int i = 0; i < arr.length; i++) {
if (arr[i] == num) {
return false;
}
}
return true;
}
}
import java.util.Arrays;
import java.util.Random;
/**
* @ClassName: codePractice08
* @Author: Kox
* @Data: 2023/1/14
* @Sketch: 抽奖
*/
public class codePractice08 {
public static void main(String[] args) {
int[] arr = {2, 588, 1000, 10000};
Random r = new Random();
for (int i = 0; i < arr.length; i++) {
int index = r.nextInt(arr.length);
int temp = arr[i];
arr[i] = arr[index];
arr[index] =temp;
}
System.out.println(Arrays.toString(arr));
}
}