Java作为一种跨平台、面向对象的编程语言,具有强大的扩展性和可移植性,一直以来都是IT行业中最受欢迎的编程语言之一。在我学习Java的过程中,我深刻地认识到了它的重要性和强大的威力,下面是我对Java学习的一些感悟和心得,希望能对同学们有所启发。
Java是一种面向对象和平台无关的编程语言,在计算机科学领域中应用广泛,具有很高的职业前景和市场价值。无论是企业级应用程序、移动应用、桌面应用还是Web应用程序,都可以使用Java进行开发。而且Java语言的特点是易学易用,入门门槛比较低,所以很适合初学者学习编程。
Java是非常灵活和强大的编程语言,它具有许多成熟和可靠的技术和库,如Spring框架、Hibernate、Struts、JSP等等,这些技术和库可以帮助开发人员快速构建高效、安全、可靠的应用程序。Java还提供了丰富的API和开发工具,如Eclipse、NetBeans、IntelliJ IDEA等等,可以大大提高开发效率,减少开发时间和成本。
Java基础知识包括Java语言的基本概念、语法、变量、运算符、流程控制、数组、函数、类、对象、继承、多态、接口、异常处理等等。
Java是一种广泛使用的编程语言,具有简单、可靠、安全和跨平台等特点。下面是一些Java基础知识的概述:
1. Java的特点:Java是一种面向对象的编程语言,具有简单易学、可移植性强、安全性高和性能优越等特点。它的跨平台性使得Java程序可以在不同的操作系统上运行。
2. Java的基本语法:Java的语法与C++类似,使用分号作为语句结束符,使用大括号表示代码块。Java程序由类(class)组成,每个类包含属性(变量)和方法(函数)。
3. 数据类型:Java提供了多种数据类型,包括基本数据类型(如整数、浮点数、字符和布尔值)和引用数据类型(如类、接口和数组)。
4. 控制流程:Java提供了多种控制流程语句,如条件语句(if-else、switch)、循环语句(for、while、do-while)和跳转语句(break、continue、return)。
5. 面向对象编程:Java是一种面向对象的编程语言,支持封装、继承和多态等面向对象的特性。通过定义类和对象,可以实现代码的模块化和重用。
6. 异常处理:Java提供了异常处理机制,可以捕获和处理程序运行过程中可能出现的异常情况,保证程序的稳定性和可靠性。
7. 输入输出:Java提供了丰富的输入输出(I/O)类和方法,可以实现与用户的交互和文件的读写操作。
8. Java标准库:Java标准库(Java Standard Library)是Java提供的一组类和方法,包含了各种常用的功能和工具,如字符串处理、日期时间操作、集合框架等。
这些是Java基础知识的概述,涵盖了Java的特点、语法、数据类型、控制流程、面向对象编程、异常处理、输入输出和标准库等方面。
一.条件判断语句
1.条件判断语句是写代码必不可少的语句之一,我们可以用它来控制输出,
2.条件语句有三个格式依次列举
1)语句一
语法:if(关系表达式){
语句体;
}
上面学过的三元运算可以比较两个数的大小,我们学了这个可以比较多个数的大小;
举例说明怎么使用 if(a>b){
System.out.println("a比b大");
}
下面是例题:
public class A{
public static void main(String arge[]){
int a = 0;//如果a=0的话就要打屁股
if(a==0){
System.out.println("打屁股");
}
}
}
练习(如果你考了一百分就奖励兰博基尼):
public class A{
public static void main(String arge[]){
int a = 100;
if(a==100){
System.out.println("奖励兰博基尼");
}
}
}
2)语句二
语法:if(关系表达式){
语句体1;
}else{语句体2;}
这个格式是上面的进阶,它可以处理更复杂的问题。
我们可以这样用: if(i<60){
System.out.println("你没及格");
}else{"你及格了"}
例题:判断是否及格
import.java.util.Scanner;
public class A{
public static void main(String ages[])
Scanner sc = new Scanner(System.in);
System.out.println("总分一百分请输入你的分数")
double i = sc.nextDouble();//注意分数可能有小数所以这里用double
if(i<59){
System.out.println("没及格")
}else{System.out.println("你及格了")}
}
练习:判断奇偶数
我们只需要更改关系表达式就能完成,
import.java.util.Scanner;
public class A{
public static void main(String ages[])
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个整数")
double i = sc.nextDouble();//注意分数可能有小数所以这里用double
if(i%2==0){
System.out.println("这是偶数")
}else{System.out.println("这是奇数")}
}
3.语句三
语法:if(关系表达式1){
语句体1
}else if(关系表达式2){
语句体2
}
...
else{语句体n}
这种格式一般用于有多个区间时使用,跟下面的选择语句有异曲同工之处
举例说明:
import java.util.Scanner;
public class Day02_demo4 {
public static void main(String[] args) {
// 创建控制台输入类对象
Scanner in = new Scanner(System.in);
//提示用户操作
System.out.println("请输入成绩:");
// 获得用户输入的数字
int result = in.nextInt();
//判断数字的区间
if(result>=95 & result<=100){
System.out.println("奖励自行车一辆");
}else if(result>=90 & result<=94){
System.out.println("游乐场玩一次");
}else if(result>=80 & result<=89){
System.out.println("变形金刚玩具一个");
}else {
System.out.println("胖揍一顿.....");
}
}
}
练习:企业发放的奖金根据利润提成。利润低于或等于10万元时,奖金可提10%;利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可提成7.5%;20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时高于40万元的部分,可提成3%;60万到100万之间时,高于60万元的部分,可提成1.5%,高于100万元时,超过100万元的部分按1%提成,在程序中设定一个变量为当月利润,求应发放奖金总数?
public class Test01 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入利润()万");
double i = sc.nextDouble();
double d =0;
if (i<=10){
d = i*0.1;
System.out.println(d);
}
else if (i<=20&&i>=10){
d = (i-10)*0.075+1;
System.out.println(d);
}
else if (i<=40&&i>=20){
d = (i-20)*0.05+0.75+1;
System.out.println(d);
}
else if (i<=60&&i>=40){
d = (i-40)*0.03+1+0.75+1;
System.out.println(d);
}
else if (i<=100&&i>=60){
d = (i-60)*0.015+0.6+1+0.75+1;
System.out.println(d);
}
else {
d = (i-100)*0.01+0.6+0.6+1+0.75+1;
System.out.println(d);
}
}
}
二.选择语句
1.我们什么时候使用选择语句呢?应用场景:当数据是一个小的范围且固定不变的情况下使用选择语句进行匹配。比如说-一年四季,一周七天,
语法: 条件选择语句
* switch(条件){
* case 值1:
* 语句1;
* break;
* case 值2:
* 语句2;
* break;
* ....
* default:
* 语句n;
* [break;]
*
* }
我们在这里简单的举个例子:
switch (90+100){
case 60:
System.out.println("化生子。d。。");
break;
case 70:
System.out.println("无语了......");
break;
case 80:
System.out.println("一般般...");
break;
case 100:
System.out.println("还不错....");
break;
default:
System.out.println("宇宙超人");
}
需要注意的是default跟上面的else作用一样,default后面的break;可写可不写;
就上面的练习来说 如果你把前面几个break删掉的话
import java.util.Scanner;
public class Day02_demo5 {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
System.out.println("请输入周几:");
int result = in.nextInt();
switch (result){
case 1:
System.out.println("跑步");
case 2:
System.out.println("游泳");
case 3:
System.out.println("慢走");
case 4:
System.out.println("骑单车");
break;
case 5:
System.out.println("拳击");
break;
default:
System.out.println("躺平休息");
}
}
}
你如果输入的是1的话,将会出现
跑步
游泳
慢走
骑单车
直到遇见case 4中的break才结束
三.循环语句
循环语句在我们计算时经常使用到,我们一定要理解它,要想理解它,首先就要了解它的执行流程
我们用for循环举例;
1.for循环
for(初始化语句;循环条件语句;条件控制语句){
循环体;
}
初始化语句:代表从什么时候开始进行循环;假设标记为1
循环条件语句:代表控制循环的次数或者说什么情况下要继续执行循环动作;假设标记为2
条件控制语句:代表条件变量随着循环次数的改变而改变;假设标记为3
循环体:代表要执行循环的动作;假设标记为4
根据上面的语法结构它的执行顺序如下:
插图进行说明
2.whil循环
while循环跟for循环本质都是循环但我们什么时候用whil循环呢?以我的理解就是不知道循环次数的时候用while循环最佳;
3.do...while循环
do...while循环的特点是至少循环一次,
它的执行流程跟上面的for循环有一些不一样,
为了更好的理解它可以通过下面例题:要求用户输入一个0到2之间的整数,如果用户输入0输出“你出的是石头”,如果用户输入1就输出“你出的是剪刀”,如果用户输入的是2就输出“你出的是布”,然后再问是否要继续出拳,如果回答“y”就重复以上过程,否则结束程序。
package com.feisi11;
import java.util.Scanner;
public class Texts4 {
public static void main(String[] args) {
String a = "y";
do{Scanner sc =new Scanner(System.in);
System.out.println("请输入一个0-2之间的数");
int i =sc.nextInt();
if (i==0){
System.out.println("你出的是石头");
}else if (i==1){
System.out.println("你出的是剪刀");
}else if (i==2){
System.out.println("你出的是布");
}else{
System.out.println("请重新输入");
}
Scanner cs =new Scanner(System.in);
System.out.println("输出y代表继续");
a =cs.next();
}while (a.equals("y"));
}
}
四.跳转控制类
1.跳转控制类的作用主要是用来跳出循环,跳转控制类有两个分别为break和continue
continue 用在循环中,基于条件控制,跳过某次循环体内容的执行,继续下一次的执行
break 用在循环中,基于条件控制,终止循环体内容的执行,也就是说结束当前的整个循环
上面选择语句中就用到了break。
五.Random类
Random类的作用是随机产生一个数;
使用步骤:
第一步:导包
import java.util.*;
第二步:创建对象
Random r = new Random();
第三步:获取随机数
int number = r.nextInt(10);// 10以内的随机数,取值范围是 [0,10}
案例:需求:中午不知道吃什么,产生随机数,如果是1就吃黄焖鸡,如果是2就吃螺蛳粉,如果是3就吃木桶饭,如果是4就吃花甲粉,都不是就不吃了
import java.util.Random;
public class Day02_demo9 {
public static void main(String[] args) {
Random r = new Random();
int number = r.nextInt(5);
System.out.println("产生的随机数是:"+number);
switch (number){
case 1:
System.out.println("恭喜黄焖鸡中奖");
break;
case 2:
System.out.println("恭喜螺蛳粉中奖");
break;
case 3:
System.out.println("恭喜木桶饭中奖");
break;
case 4:
System.out.println("恭喜花甲粉中奖");
break;
default:
System.out.println("不吃了");
break;
}
}
}
练习:让计算机随机产生10个0到2之间的数,如果产生的是0就输出“生成了一只白猪,我好怕怕”,如果产生的是1就输出“生成了一只黑猪,我喜欢”,如果产生的是2就输出“生成了一只红猪,有下酒菜了”。
package com.feisi11;
import java.util.Random;
public class Text05 {
public static void main(String[] args) {
Random r = new Random();
for (int i = 0; i <=10; i++) {
int a = r.nextInt(3);
if (a==0){
System.out.println("生成了一只白猪,我好怕怕");
}else if (a==1){
System.out.println("生成了一只黑猪,我喜欢");
}else {
System.out.println("生成了一只红猪,有下酒菜了");
}
}
}
}
需要注意的是 int a = r.nextInt(3);是在循环里面;