JAVA编程基础

目录

2.1变量与常量

2.1.1关键字与表达字

2.1.2标识符与命名的规范

2.1.3数据类型

2.1.4常量的定义与赋值

2.1.5常量

2.1.6变量的类型转换

2.1.7Scanner的使用

2.2运算符与表达式

2.2.1算数运算符

2.2.2赋值运算符

2.2.3关系运算符

2.2.4逻辑运算符

2.2.5三元运算符

2.2.6运算符的优先级

2.3选择结构

2.3.1if语句

2.3.2switch语句

2.3.3两种选择结构的对比

2.4循环结构

2.4.1for语句

2.4.2while语句

2.4.3do...while语句

2.4.4break语句与continue语句

2.5方法

2.5.1方法的声明和调用

2.5.2方法重载

2.5.3方法递归

2.6数组

2.6.1常见操作

2.6.2数组排序算法

1、冒泡排序

2、选择排序

2.6.3二分查找法

2.6.4二维数组

2.7章节小结

类与对象(基础篇)

1、面向对象的概念

2、面向对象编程

2.1、类的定义

 2.3成员变量默认值

3、构造方法

3.1什么是构造方法

3.2构造方法的使用

4、this关键字

4.1this关键字的使用


2.1变量与常量

2.1.1关键字与表达字

while

catchdoublebreaktryswitchvoidassertbooleantransient
superpackagethisthrowthrowsstaticnewimportreturnstrictfp
shortnativeabstractfinalpublicprivateinstanceoffinallydefaultvolatitle
protectedintfloatdolonggotosynchronizedcharforbyte
interfaceclassenumifextendsconstcontinueelsecaseimplements

2.1.2标识符与命名的规范

标识符:给java中的类、方法、变量、命名的符号。

标识符命名规则:1、只能以字母、数字、下划线以及美元符号组成,并且开头不能为数字

                             2、大小写有区分,长度无限制。

                             3、不能为关键字和保留字。

2.1.3数据类型

数据类型一般分为基本数据类型引用数据类型两大类。

基本数据类型又分为数值型、字符型和布尔型。

引用数据类型又分为类、接口和数组。

2.1.4常量的定义与赋值

变量的本质就是一个储存空间,其中的空间位置是确定的,但内部放置的不确定。

变量的声明如下:

1、数据类型 变量名;变量名=变量值;

2、数据类型 变量名=变量值;

2.1.5常量

常量和变量的语法类似,只需要在变量声明语法前加一个final关键字就OK啦。

常量的声明如下:

final 数据类型 常量名 = 常量值;

2.1.6变量的类型转换

Java中的数据转换分为自动类型转换强制类型转换

2.1.7Scanner的使用

scanner的使用是因为目前编写的程序都只能有简单的输出,然而有些程序需要用户通过键盘输入一些内容,此时便需要借助Scanner类。

package tan;
import java.util.Scanner;
public class damn{
    public static void main(String [] args){
        Scanner sc = new Scanner(String.in);
        System.out.println("请输入一串数字:");
        String num = sc.next();
        System.out.println("你输入的一串数字是:"+num);
}
}
请输入一串数字:123456
你输入的一串数字是:123456

2.2运算符与表达式

2.2.1算数运算符

+加法运算以及字符串的连接
-减法运算
*乘法运算
/除法运算
%取整运算,即求余数

2.2.2赋值运算符

=将右边的值赋值给左边的变量,例如:num=8。

2.2.3关系运算符

>大于>=大于等于
<小于<=小于等于
==等于!=不等于

2.2.4逻辑运算符

&与运算
|或运算
^异或运算
非运算
&&短路与运算
||短路或运算

2.2.5三元运算符

三元运算符示例如下:

条件表达式 ? 表达式1  : 表达式2 ;

2.2.6运算符的优先级

1括号()
2正负号+、-从右到左
3一元运算符++、--从右到左
4乘除*、/、%从左到右
5加减+、-从左到右
6移位运算>>、<<、>>>从左到右
7比较大小>、<、>=、<=从左到右
8比较是否相等==、!=从左到右
9换位与运算&从左到右
10按位异或运算^从左到右
11按位或运算|从左到右
12逻辑与运算&&从左到右
13逻辑或运算||从左到右
14三元运算符?:从右到左
15赋值运算符=从右到左

2.3选择结构

2.3.1if语句

if(条件表达式1){
    代码块1;
}else if(条件表达式2){
    代码块2;
}

2.3.2switch语句

switch(变量){
case 值1;
    代码块1;
    break;
case 值2;
    代码块2;
    break;
}

2.3.3两种选择结构的对比

if语句一般用于区间值的判断,switch一般用于确定值的判断。

2.4循环结构

2.4.1for语句

for(循环初始化表达式;循环条件表达式;循环后的操作表达式){
    //循环体    
}

2.4.2while语句

while(条件表达式){
    //循环体
}

2.4.3do...while语句

do{
    //循环体
}while(条件表达式);

2.4.4break语句与continue语句

break用于强行退出循环,不执行循环中剩余的语句。

continue用于只能终止某次循环,继续下一次循环。

2.5方法

2.5.1方法的声明和调用

方法必须先声明才能在其它代码中使用。

方法声明格式如下:

修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2,…){
    //方法体;
    retuen 返回值;
}

2.5.2方法重载

在同一个类中,允许存在一个以上的同名方法,只要它们的参数个数或者参数类型不同即可,这种现象就称为方法重载。

2.5.3方法递归

package tan;
import java.util.Scanner;
public class damn{
    public static void main(String [] args){
        Scanner sc = new Scanner(String.in);
        System.out.println("请输入要计算的位数:");
        String num = sc.nextInt();
        int fib=fib(num);
        System.out.println("斐波那契数列中第 " + num + "位数字为:"+ fib );
}
    public static int fib(int n){
        if(n==1||n==2){
        return 1;
        }else{
            return fib(n-1)+fib(n-2);    
        }
    }
}
请输入要计算的位数:
30
斐波那契数列中第30为数字为:832040

2.6数组

2.6.1常见操作

1、通过索引操作元素

2、数组的遍历(foreach循环)

3、获取数组的最值

4、通过值获取索引

5、数组元素的反转

foreach循环语法示例如下:

for(数据类型 变量:数组){
    System.out.println(变量);
}

2.6.2数组排序算法

1、冒泡排序
package tan;
public class 冒泡排序{
    public static void main(String [] args){
        int[] arr = new int[]{10,5,12,13,7,4,2,15,9};
        damn(arr);
        System.out.println("排序后的数组为:");
        for(int num : arr){
            System.out.print(num + " ");
        }
}
    public static int damn(int[] arr){
        //外层循环控制趟数
        for(int i=arr.length-1;i>0;i--){
            for(int j=0;j<i;j++){
                if(arr[j]>arr[j+1]){
                    int temp = arr[j];
                    arr[j] = arr[i];
                    arr[i] = temp;//交换元素值
                }
            }
        }
    }
}
2、选择排序
package tan;
public class 选择排序{
    public static void main(String [] args){
        int[] arr = new int[]{10,5,12,13,7,4,2,15,9};
        damn(arr);
        System.out.println("排序后的数组为:");
        for(int num : arr){
            System.out.print(num + " ");
        }
}
    public static int damn(int[] arr){
        //把每次选择完的元素中的最小值放在第一位
        for(int i = 0 ; i < arr.length-1 ; i++){//记录最小值坐标
            int min = i;
            for(int j = i+1 ; j < arr.length ; j++){
                if(arr[j] < arr[min]){
                   min = j;
                }
            }
                   if(min != i){
                     int temp = arr[j];
                    arr[j] = arr[i];
                    arr[i] = temp;//交换元素值
            }
        }
    }
}

2.6.3二分查找法

二分查找法是性能更高效的查找算法。二分查找法又称折半查找法,其算法思想是每次查找数组最中间的值,通过比较大小关系,决定在从左边还是右边查询,知道查询到为止。

2.6.4二维数组

二维数组的每一个元素都是一个数组。

创建二维数组的语法如下:

数据类型[][] 数组名 = new 数据类型[m][n];

2.7章节小结

本章节主要介绍了Java基础语法,讲解不是很详细但都是最重要的。

欢迎大家指出错误,如有需要完善请在评论区告诉我!!!欢迎大家积极指出我的问题。

类与对象(基础篇)

1、面向对象的概念

1、面向对象是以对象为核心,强调时间的角色、主题,在宏观上使用对象进行把控,二微观上依然是面向过程。

2、面向对象具有抽象、封装、继承、多态的特性

2、面向对象编程

2.1、类的定义

类主要由变量和方法组

变量定义格式:

修饰符 变量类型 变量名 = [默认值];

 方法定义格式:

修饰值 返回值类型 方法名(形参列表){}

例:创建三个空白类

public class 类1{

}

class 类2{

}

class 类3{

}

 2.2对象的创建与使用

对象创建语法格式:

类名称 对象名称 = new 类名称();

 例:


public class Student{
    public static void main(String[] args){
        Student student1 = new Student();//创建的第一个变量
        student1.age = 18;
        student1.name = "张三";
        student1.study();
        Student student2 = new Student();//创建的第二个变量
        student2.age = 24;
        student2.name = "李四";
        student2.eat("饼干");
    }    
}
 2.3成员变量默认值
数据类型默认值数据类型默认值
整型0布尔型false
浮点型0.0引用类型null
字符型'\u0000'

3、构造方法

3.1什么是构造方法

构造方法的调用语法格式:

修饰符 类名(形参类型){}
3.2构造方法的使用

public class gouzao{
    public static void main(String[] args){
        Student student1 = new Student();//无参构造方法创建对象
        Student student2 = new Student("张三",23);//有参构造方法创建对象
    }    
}

4、this关键字

4.1this关键字的使用

public class point{
    public static void main(String[] args){
        double x;
        double y;
        public point(double x,double y){
            this.x=x;
            this.y=y;
        }
         public double print(point p){
            double xlen=this.x-p.x;
            double ylen=this.y-p.y;
            return Math.sprt(xlen*xlen+ylen*ylen);
        }
    }    
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值