文章依照集体的思路写的,顺着思路的程序所写。
Java 语言
Java 语言,是一门计算机高级语言。所谓高级,就是说,不是对计算机底层进行操作的语言,而是对计算机软件或程序进行设计和开发的语言。
计算机语言的语法
无规矩不成方圆,一门语言,是必须具备肯定逻辑性的,计算机也是一样。计算机语言本是由 0 和 1 形成,为了人们能更好的与计算机进行交互,才会产生新的语法规定。Java 也有属于他本人与计算机交互的语法。
计算机语言存在的价值,学习的必要性?
计算机比人类强的中央就在于其计算速度之快,是人类无奈企及的。只有将问题的逻辑梳理并在计算机下面实现,会比人类处理速度高太多。
计算机语言要学习哪些方面?
学过数电,都晓得,计算机其实就是在做,与非的各种操作。进阶一下,计算机无非就是计算一些加减乘除等逻辑运算,还有一些循环操作。这能够说是学习计算机语言根本要理解的底层原理吧。
指标很明确,计算机要学的就是逻辑运算的技巧和循环。所有应用程序根本都在做这些事件
数据类型 & 运算
数据类型能够分为根本数据类型和援用数据类型。
根本数据类型有 8 种(援用数据类型,当前文章会讲。)
Java 根本数据类型
Java 根本数据类型
数据类型存在的优缺点
长处
-
他确定了存储空间大小,缩小了多余空间的节约。
- 对于个体而言,辨别类型很多余,然而如果存储企业级的数据量时,这样思考,就特地有必要。
- 读取不便,不存在不晓得数据类型,而显示乱码等问题。
毛病
- 空间大小确定,存储数值不能超出范围,有数据溢出的危险。
数据溢出:间接导致数据值变成一个不是你想要看到的后果
计算机中是 0 和 1 存储,当初如果只有四位则最大 1111(二进制),如果加 1,就会产生进位,然而就只有 4 位,就导致显示 0000 所对应的后果。
数据溢出实例:
public class Test01{public static void main(String[] args){
int a = 2147483647;
System.out.println(a + 1);
}
}
输入后果为:-2147483648
数据类型的申明和应用
上述的例子中 int a = 2147483647; 就是对整型 (int) 类型变量 a 申明,并赋值为 2147483647 的应用办法。
这里顺带提一下,变量的命名形式采纳 小驼峰命名法
小驼峰命名法:命名由多个单词组成时,(除了第一个)单词首字母都大写。例:myPhone,studentName……
变量应用的注意事项
-
变量申明问题
-
变量申明且赋值时,不要接着申明赋值,例:
int a=3,b=6;
- 这种写法不利于察看,最好别用。
-
-
变量赋值问题
-
char 类型赋值
- char 的值须要用英文单引号
'
括起来 - 外面只能是一个字符,如:阿拉伯数字,特殊符号,英文字母、汉字等。
- 有一些特殊字符,须要加
` 进行本义,如
char c = ”’ ;` 单引号在这里不能独自打进去。(这是反斜杠,别看走眼) - 留神:char 还能够间接写阿拉伯数字,其会输入对应的 ASCII 编码表对应的那个符号。(间接阐明了,char 能够进行加减计算,但后果是字符,而整型数据)
- char 的值须要用英文单引号
-
float 类型赋值
- float 类型的数据,只有写的是个小数,结尾必须加
f
,这一点就比拟恶心人 >_< - 其次要起因就是,不加后缀 f,java 默认认为这是一个 double 类型的变量值。
- 当然也能“强转”(float a = (float)1.2;),之后这类话,我不写,有谁无聊,违心多敲几下键盘呢?
- float 类型的数据,只有写的是个小数,结尾必须加
-
long 类型赋值
- long 类型的值,在值大于 21474839647 时,或小于 -2147483648 时,都须要加 L 后缀。** 倡议应用这个
L
,其实也能够写小写 l 作为后缀,然而容易误以为是 1.
- long 类型的值,在值大于 21474839647 时,或小于 -2147483648 时,都须要加 L 后缀。** 倡议应用这个
-
java 运算符及其优先级
其中自增自减,是在原变量根底上加 1, 或减 1 的操作。
- 留神: a++; 示意在这一行中,a 的值没有变,下一行(分号后)开始就进行了 +1。然而 ++ a 示意此刻,a 就曾经进行了 + 1 操作。
例:
int a = 3;
int b = a++;// a 先赋值给 b,再自增
System.out.println(a+"---"+b);// 此时 a 为 4,b 为 3
b = ++a;// 此时 a 先自增为 5,再赋值给 b
System.out.println(a+"---"+b);// a 和 b 都为 5
有没有感觉如果是这样用的话,这个货色很鸡肋?谁蛋疼会去一个个的赋值什么的,没 luan 用的感觉,接下来,就是升华了,咱们要计算机跑起来,那就让程序进行循环。
static 修饰符
main 办法体上有一个 static 修饰符,这示意 main 办法是一个静态方法。
动态的作用
- 但凡 static 润饰的 量(常量和变量)以及 办法 。在 JVM 运行过程中,java 虚构机会将动态资源优先加载。所以 static 动态资源中, 不能调用和应用内部存在的非动态资源
- 其长处在于,提前就曾经进行了加载,用的时候,就很快捷且不便。
大抵就是,虚拟机在加载类的过程,会先将 static 的局部先进行加载测试。所以说,从逻辑上讲,先进去的能做的事件就很无限,一般办法和变量还没加载,天然不能被动态资源调用。即使能调用,也可能呈现问题。
Java 循环语句以及抉择执行语句
学习无趣?接下来咱们学习如何从 2020 年初,想你到 2020 年末,让你感触代码对你的关心!
循环语句:do…while、while 和 for
do…while 循环
int i=1;
do{System.out.println("我爱祖国"+i+"次,很开心");
i++;
}while(i<101)
将以上代码放入 main 办法体,就能够循环 100 次了,有没有很惊喜?当前给你男(女)敌人刷屏时,你就是手速最快的人!┗(▔, ▔)┛
纳尼?你还不晓得什么是 main 办法体?
while 循环
int cowCount = 0;
while(cowCount<66){System.out.println("第"+(cowCount+1)+"只奶牛回来了");
cowCount++;
}// 有趣味的能够试试,把那个括号去掉,会有惊喜 -w-
for 循环
int day;
for(int month=1;month<13;month++){// 打印 2020 全年
for(day=1;day<31;day++){System.out.println("2020/"+month+"/"+day);
}
}
break 与 continue
break 和 continue 个别会呈现在循环体或抉择执行语句中。
- break:跳出其所在循环或者抉择执行语句。
- continue:跳过循环的意思,阐明 这一次 的循环走到开端,进行下一次循环
int i=0;
int count=0;
for(i=1;i<1000;i++){if(i%2!=0) continue;// i 不是偶数,就跳过这一次循环
count++;
if(i==68) break;
}
System.out.println("判断了"+count+"次,i 是否等于 68");
System.out.println("for 循环执行了"+i+"次"); // 输入 i =68
三种循环的区别及其共同点
区别:每个循环语句的写法都不一样。
留神:do…while 循环,即使条件不成立,也会先执行一次
倡议:有变量自增自减,条件明确的时候,间接应用 for 循环,写起来难看,且省事。
共同点:三个都是用来反复执行某段代码的
是不是发现有问题?2 月有 30 号,1 月没有 31?哈哈哈,接下来的抉择语句会解决这个问题。
抉择执行语句
抉择抉择,就是视状况而定。
if … else … 语句
int month = 1;// 能够批改 month,查看输入对不对
int day = 30;
if(month<1||month>12){System.out.println("没有这个月份的存在!");
}
if(month<8&&month%2==1||month>7&&month%2==0){// 如果月份是 1,3,5,7,8,10,12
day = 31;
} else if(month==2){// 如果是 2 月就是 29 天
day = 29;
} else day=30;
System.out.println("2020 年"+month+"月,有"+day+"天");
switch 语句
int month = 1;
int day = 0;
if(month<1||month>12){System.out.println("你填了个寂寞");
}
switch(month){
case 2:
day = 29;
break;
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
day = 31;
break;
default:
day = 30;
}
System.out.println("2020 年"+month+"月,有"+day+"天");
办法的定义
办法和变量差不多,就是在名字前面多了对小括号和大括号。大括号内,写这个办法该做阐明事件。这里就会有一个关键词: return
办法的定义格局:拜访权限 数据类型 办法名(办法体参数)
-
拜访权限
- 这个临时不必思考,能够不写
-
数据类型,示意这个办法,返回值类型。
- 当办法只做操作,不须要传递数据值的时候,就写个
void
- 如果这个办法体,做一些事件,要传递一个数据进来,传递进来的数据类型是什么,办法的数据类型就是什么。
- 写完一个须要传值的办法体,在最初须要写上
return a;
此时这个 a 就是你要传出去的值
- 当办法只做操作,不须要传递数据值的时候,就写个
-
办法名
- 办法名本人轻易定义,命名格局也是依照 小驼峰命名法 走
-
办法体参数
- 这里填的是,你须要这个办法,进行操作的一个或多个变量。两头用
,
隔开。如果没有,就不写。
- 这里填的是,你须要这个办法,进行操作的一个或多个变量。两头用
int add(int x,int y){// 须要传递变量,这里 x,y 是形参,轻易取名,不影响。return x+y;// 返回一个 int 类型的 x + y 的值
}
最初大作业:(Demo.java)
public class Demo{public static void main(){xiuEnAi();
}
public static void xiuEnAi(){
// 这里有一个 static,是为了能够间接放在 main 办法外面运行的起因
int day2=31;
int count=0;// 记录你的恋爱天数
for(int month=1;month<13;month++){// 打印 2020 全年
switch(month){
case 2:
day2 = 29;
break;
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
day2 = 31;
break;
defalut:
day2 = 30;
}
for(int day=1;day<=day2;day++){
count++;
System.out.println("2020/"+month+"/"+day
+", 这是我爱 Java 编程的第"+count+"天");
System.out.println(2020%4==0?"2020 年是平年":"2020 年是平年");// 这是三目运算符的用法。}
}
}
}
三目运算符:条件?正确时执行的语句:谬误时执行的语句
数组
数组,简略说,这是一个数据组队打团的故事。。。
呈现起因:
有时候咱们须要一种类型的变量很多,比方一个球队,人就很多 1 号球员,3 号球员的,一个个定义太慢。数组就进去了。
其定义方法:
一维数组:int[] a = new int[4];
或 int[] a = {1, 2, 6, 3, 4};
示意定义了一个能存 4 个 int 类型的 a 数组,能够认为是 a 队。
二维数组:char[][] b = new char[5][6];
二维数组个别很少用,初始化能够用 for 循环。要是间接给值,网上有很多,不赘述。
数组的应用须要留神,其下标是从 0 开始的,即,长度为 4 的 a 数组,其所有元素为:a[0]、a[1]、a[2]、a[3]。
总结
Java 语法常识不多,但却是最重要的。变量的申明很有考究的,大括号外面申明的变量,在大括号里面用不了。如果须要一些变量长期有效,那就往外提。根底最重要嘛。顺带一提就是 &&
和||
别离叫做短路与和短路或
也就是说,&& 后面的条件为 false,前面无论对错,都不会进行判断,即使可能运行会报错的问题,也不会去管。短路或就是后面是对的,前面对错也就不论了。
能够试试这段代码
int i=0;
if(i==0||6/i>0) System.out.println("程序没问题");
零根底学习 Java 编程,举荐退出我的十年 Java 学习园地。