这一周是加入小组的第一周,从开始学习如何安装JDK,到逐渐熟悉java语言的基本架构,逐渐开始适应小组的时间安排,每天的生活也是非常的充实,如果没有加入小组,或许自己每天还是上网课,打游戏,睡觉,慢慢的去消耗自己的时间,一无所获。
在学习java语言第一天时,我看到java的各种形式,比如说java语言的输入语句,java语言的输出语句,这不像C语言中 scanf、printf来的更直接,输入语句更是需要导包---->创建对象---->接收数据。在java语言学习的过程中,发现语言的相同点,例如:基本的数据类型(名字大多相同,但是有一些细节问题不一样),三种循环语句的用法和区别。当然,也有许多的相似点,就比如:java的方法与C语言中的函数相似。在这周的学习中,我觉得java语言有几个优势:
例如:
System.out.println("学习java第"+day+"周");
代码演示:
//1.生成一个1-100之间的随机数
Random r = new Random();
int number = r.nextInt(100) + 1;// 0 ~ 99 + 1 --- 1 ~ 100
System.out.println(number);
//2.使用键盘录入去猜出这个数字是多少?
Scanner sc = new Scanner(System.in);
while(true){
System.out.println("请输入一个整数");
int guessNumber = sc.nextInt();
//3.比较
if(guessNumber > number){
System.out.println("您猜的数字大了");
}else if(guessNumber < number){
System.out.println("您猜的数字小了");
}else{
System.out.println("恭喜你,猜中了");
break;//结束循环,注意与continue的区别
}
}
特别注意:
随机数生成范围的确定
将键盘录入写进循环体实现多次输入
不要将生成随机数的代码写进循环(中奖)
可以设定在多少次之后必猜中,无论是否猜对(抽水晶)
(同名同类不同参)
个数不同,类型不同,或顺序不同。
代码演示:
import java.util.Scanner;
//方法同类
public class Demo2 {
public static void main(String[] args){
byte x=1;
byte y=1;
compare((long) 12,(long) 45);//强制转换
compare(12,45);
compare(x,y);
}
//方法同名,参数不同
public static void compare(byte b1,byte b2) {
System.out.println(b1==b2);
}
public static void compare(double b1,double b2) {
System.out.println(b1==b2);
}
public static void compare(long l1,long l2) {
System.out.println(l1==l2);
}
public static void compare(int i1,int i2) {
System.out.println(i1==i2);
}
}
原始数组 Arr[];
1 | 2 | 3 | 4 | 5 | 6 |
---|---|---|---|---|---|
0 | 1 | 2 | 3 | 4 | 5 |
拷贝数组 newArr[];
2 | 3 | 4 | 5 | ||
---|---|---|---|---|---|
0 | 1 | 2 | 3 |
从原始数组索引1开始到索引4之前结束
public static int arr[] copyOfRange(int []arr,int from 1,int to 5){}
(to不在拷贝范围之内)
public class Demo2{
public static void main{
//定义原始数组
int arr[]={1,2,3,4,5};
//调用方法拷贝数据
int copyArr[]=copyOfRange([]arr,from 1,to 5);
//遍历新数组
for(int i=0;i<copyArr.length;i++){
System.out.println(copyArr[i]+" ");
}
}
public static int[] copyOfRange(int []arr,int from,int to){
int []newArr=new int[to-from];
//构建索引
int index=0;
for(int i=from;i<to;i++){
[index]newArr=arr[i];
index++;
}
//把数组返回
return newArr;
}
}
在定义long和float两种类型的变量时末尾需要加上首字母。
例如:
float a=2.3F;
long b=12334232L;
例如:
if(13>14&&--b=23);
因为13>14不成立,整体表现为假,故后边不执行。
数组的静态初始化与动态初始化
静态初始化:int[] arr = {1,2,3,4,5}; 知道需要操作的数据
动态初始化:int[] arr = new int[3]; 知道元素个数不知道数据
数组的索引:最小索引0,最大索引:数组名.length-1;
循环
无限循环常用while。
break语句表示整个循环结束,continue跳过本次循环,继续执行下次循环。
方法
方法不能嵌套
void 表示无返回值,可以省略return,可单独写return,后面不能加数据。
格式:
public static 返回值类型 方法名(参数){
方法体;
return 数据;
}
希望自己能合理利用时间,这周时间分配上不合理,没有制衡好学科之间的时间分配,下周要制定好时间表,争取把自己的学习效率提上去。最后,想对自己说,如果有一天你想放弃了,你就好好想想你为什么加入小组,想想你所想要的未来是什么样子的,不要为自己找冠冕堂皇的理由糊弄自己!希望能和未来的小伙伴们都坚持下去,最终都成为自己想要成为的人!