目的:
1.明白以及掌握数组的定义以及基本用法
2.了解类和对象的概念
3.明白方法的定义掌握方法的调用
4.掌握修饰符的概念和用法
5.通过编代码巩固所学的知识
技术及实施:
数组一旦被定义 大小就确定了,无法更改
在一个数组里面查找某个对象的索引值
* @param val 数组
* @param obj 查找的对象
* @return 索引值
静态数组
int[] score = {1,2,3};
String[] names = {"jack","merry"};
动态 内容添加
float[] height = new float[5];
height[0] = 165.5f;
height[1] = 170f;
Random r = new Random();
//尽量不要扩大变量的作用域
//int[] Arrays
int[] count = new int[10];
for (int i = 0; i < 10; i++){
count[i] = r.nextInt(100);
}
数组输出方式:
//数组输出方式1
for (int i = 0; i < 10; i++){
System.out.print(count[i]+" ");
}
System.out.println();
//数组输出方式2
for (int temp: count){
System.out.print(temp + " ");
}
System.out.println();
//数组输出方式3
System.out.println(Arrays.toString(count));
}
自己写一个方法实现 判断某个数组里面是否包含某个值
public static boolean contains(int[] val, int obj){
for (int i = 0; i < val.length; i++){
if (val[i] == obj){
//重复了
return true;
}
}
return false;
}
方法调用:
//判断用户输入
//1.判断是否存在
for (int i = 0; i < 4; i++) {
boolean result =contains(guess, org[i]);
if(result == true){
//数字存在
修饰符:public static final
public是一个访问权限修饰符,表示被修饰者有公共访问权限
被static修饰的成员变量和成员方法独立于该类的任何对象
用final修饰的类不能被继承,即不能拥有自己的子类
java语言实现猜数字游戏:
class GuessNumber{
public static void main(String[] args){
//保存原始数字
int[] org = new int[4];
//保存用户猜测的数字
int[] guess = new int[4];
//产生4个随机数
Random random = new Random();
for (int i = 0; i < 4; i++){
//产生一个随机数
int temp = random.nextInt(10);
//判断是否存在
boolean result = contains(org, temp);
if (result){
//确保i对应的位置能够得到一个不重复的数字
i--;
}else{
org[i] = temp;
}
}
//排序
Arrays.sort(org);
System.out.println(Arrays.toString(org));
//定义一个扫描仪对象Scanner
Scanner scanner = new Scanner(System.in);
//开始游戏
while(true){
int countA = 0;
int countB = 0;
System.out.print("请输入猜测的数字:");
for (int i = 0; i < 4;i++){
guess[i] = scanner.nextInt();
}
//判断用户输入
//1.判断是否存在
for (int i = 0; i < 4; i++) {
boolean result =contains(guess, org[i]);
if(result == true){
//数字存在
//判断位置是否相同
int index = Arrays.asList(guess).indexOf(org[i]);
if (index == i){
//数字和位置都相同
countA++;
} else{
countB++;
}
}
}
if (countA == 4){
System.out.println("恭喜全对!");
break;
}
}
}
//自己写一个方法实现 判断某个数组里面是否包含某个值
public static boolean contains(int[] val, int obj){
for (int i = 0; i < val.length; i++){
if (val[i] == obj){
//重复了
return true;
}
}
return false;
}
}
感悟:
今天又是收获满满的一天,知道Java语言与c语言有许多的不同之处,学习了java数组的定义及使用,类,对象,等等,感觉很充实。感受了java可以调用方法的便捷之处,但是也得会正确调用。暂时还是有点不习惯Java编写,可能是c语言用惯了。学习的东西有点多,需要好好消化一下。