01java学习笔记

目录

(一)基础知识

1、准备

2、基础

    1.1转义字符:\n,\t,\r

    1.2运行HelioWord.java

1.3使用idea编写项目,注意大小写

1.4相对路径与绝对路径,dos

2.1变量

2.2变量类型转换

3.1算数运算符

3.2比较运算符

 3.3逻辑运算符

 3.4赋值运算符

3.5三元运算符

4.1输入方法:Saanner.next()

 4.2进制转换

 4.3练习互相转换​编辑

4.4位运算

 5.1程序控制结构

5.2分支控制

5.2.1单分支与双分支

5.2.2多分支与嵌套分支

5.2.3switch 分支结构

5.3.4 switch 和 if 的比较

5.3循环控制

5.3.1 for循环控制

5.3.2 while循环控制

5.3.3 do..while循环结构

5.3.4 多重循环

5.4数组

(二)面向对象基础

(三)面向对象中级

(四)项目


(一)基础知识

1、准备

JDK安装,环境安装,idea安装

2、基础

    1.1转义字符:\n,\t,\r

    1.2运行HelioWord.java

1)文件编码GBK

(String大写)

 2)通过 javac 命令对该 java 文件进行编译,生成 .class 文件

打开CMD,输入javac HelioWord.java

 3)通过 java 命令对生成的 class 文件进行运行。

java HelioWord

1.3使用idea编写项目,注意大小写


public class HelloWord {

    //主方法,公共,静态,不返回值,主方法,字符串
   public static void main(String[] args) {
        System.out.println("HelloWord,你好!");
    }
}

1.4相对路径与绝对路径,dos

cd ../表示打开上一级,cd /表示打开根目录

磁盘操作命令dos

cd打开,dir展示所有,tree目录树,cls清屏,exit退出 

2.1变量

基本数据类型:

整数:byte字节1,short字节2,int字节4,long字节8

浮点:float字节4,double字节8

字符:char字节2         c1 = 'a'(必须单引号,双引号为字符串)

布尔:boolean字节1

引用数据类型:

class类

接口inferface

数组[]

码工具 - 代码在线工具箱-java-api文档

2.2变量类型转换

1)强制转换类型格式:(int)10,(int)(10*3.5)

2)基本与字符串类型转换

基本类型转字符串类型

int a = 1;

String  s1 =  a + "";

字符串转基本类型

int num = Integer.parseInt(s1);

float num1 = Float.parseFloat(s2);

3.1算数运算符

j= i++;先赋值,再自加,i赋值j,i+1

j= ++i;先自加,再赋值,i+1,i赋值j

3.2比较运算符

 3.3逻辑运算符

 

 3.4赋值运算符

b += 1;    b=b+2

3.5三元运算符

4.1输入方法:Saanner.next()

 4.2进制转换

 

 其它转10进制:数字 × 进制 ×^(总位数-1)+ … + 数字 × 进制 ^ 0

10进制转其它:将数不断除以进制,直到商为 0 ,将每步得到的余数倒过来,就是对应的进制

 4.3练习互相转换

4.4位运算

 5.1程序控制结构

顺序控制

5.2分支控制

5.2.1单分支与双分支
//        单分支
        if(age>18){
            System.out.println("已经成年");
        }
//        双分支
        if(age>18){
            System.out.println("已经成年");
        } else {
            System.out.println("未成年");
        }
//        双分支练习
        int years = mySaanner.nextInt();
        if ((years % 4 == 0  && years % 100 != 0) || years % 400 == 0){
            System.out.println(years+"是闰年");
        }else {
            System.out.println(years+"不是闰年");
        }
5.2.2多分支与嵌套分支
import java.util.Scanner;
import java.util.Date;
import java.text.SimpleDateFormat;

public class IfElsePractices {
//    主方法,公共,静态,不返回值,主方法,字符串
//    编写main方法
    public static void main(String[] args) {
//      多分支练习
        SimpleDateFormat format = new SimpleDateFormat("MM");  //"yyyy-MM-dd hh:mm:ss"  获取系统时间
        Date date = new Date();
        String month = format.format(date);
        System.out.println("现在是:" + month + "月");
        int nowm_onth = Integer.parseInt(month);  //月份转为整数类型
        Scanner mySaanner = new Scanner(System.in);
        System.out.println("请输入年龄:");
        int age = mySaanner.nextInt();  //用户输入年龄
//        旺季3分支
        if (nowm_onth > 4 && nowm_onth < 11) {
            if (age > 18 && age < 60) {
                System.out.println("成人票价:60 元");
            } else if (age < 16) {
                System.out.println("儿童票价:30 元");
            } else if (age > 60) {
                System.out.println("老人票价:20 元");
            }
        } else {
//            淡季双分支
            if (age > 18 && age < 60) {
                System.out.println("成人票价:40 元");
            } else {
                System.out.println("其他票价:15 元");
            }
        }
    }
}
5.2.3switch 分支结构

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Scanner;

public class IfSwitchPractices {
//    主方法,公共,静态,不返回值,主方法,字符串
//    编写main方法
    public static void main(String[] args) {
//      多分支练习
        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");  //"yyyy-MM-dd hh:mm:ss"  获取系统时间
        Date date = new Date();
        String month = format.format(date);
        System.out.println("当前时间:" + month);
        Scanner mySaanner = new Scanner(System.in);
//      对学生成绩大于 60 分的,输出"合格"。低于 60 分的,输出"不合格"。(注:输入的成绩不能大于 100), 提示 成绩/60
        System.out.println("请输入成绩:");
        int sorce = mySaanner.nextInt();  //用户输入成绩
        if (sorce >= 0 && sorce <= 100){
            switch ((int)sorce / 60){
                case 0:
                    System.out.println("不合格");
                    break;  //break必须有
                case 1:
                    System.out.println("合格");
                    break;
            }
        }else {
            System.out.println("你输入成绩的不对,请重新输入");
        }
            }
        }

5.3.4 switch if 的比较
1) 如果 判断的具体数值不多 ,而且符合 byte short int char, enum[ 枚举 ], String 6 种类型。虽然两个语句都可
以使用,建议使用 swtich 语句。
2) 其他情况:对区间判断,对结果为 boolean 类型判断,使用 if if 的使用范围更广

5.3循环控制

5.3.1 for循环控制

结构:for(变量初始化;条件;变量迭代){}

        for (int num = 1; num <= 2; num++){
//            int res = 1;
            System.out.println("你好!" + num);
        }
        for (int num1 = 1,num2 =2; num1 <= 2; num1++,num2 += 1){
//            int res = 1;
            System.out.println("你好!" + num1 + ", num2=" + num2);
        }

练习:

//        打印 1~100 之间所有是 9 的倍数的整数,统计个数 及 总和
        int i = 1;
        int count = 0;
        int sum = 0;
        for (; i <= 100; i++){
            if (i % 9 == 0){
                System.out.println(i);
                count++;
                sum += i;
            }
        }
        System.out.println("出现次数:" + count);
        System.out.println("求和:" + sum);
5.3.2 while循环控制
//        打印 1—100 之间所有能被 3 整除的数,统计个数 及 总和
        int i = 1;
        int count = 0;
        int sum = 0;
        while (i <= 100){
            if (i % 3 == 0) {
                System.out.println("你好!" + i);
                count++;
                sum += i;
            }
            i++;
        }
        System.out.println("出现次数:" + count);
        System.out.println("求和:" + sum);
5.3.3 do..while循环结构

先执行一次,再判断

//      统计 1---200 之间能被 5 整除但不能被 3 整除的个数
        int i = 1;
        int count = 1;
        int sum = 0;
        do {
            if (i % 5 == 0 && i % 3 != 0){
                System.out.println(i);
                count++;
                sum += i;
            }
            i++;
        }while (i <= 200);  //;不能忘
        System.out.println("出现次数:" + count);
        System.out.println("求和:" + sum);
5.3.4 多重循环

外层for循环执行一次,内层for循环开始执行至结束,外层for循环继续开始执行

多重循环  练习

5.4数组

//        数组
        double sumhens = 0;
        double[] hens = {1, 2, 3, 4, 5};
        for(int i = 0; i < hens.length; i++){
            System.out.println("第"+ (i+1) +"个值 = " + hens[i]);
            sumhens += hens[i];
        }
        System.out.println("数组和 = " + sumhens);
        System.out.println("数组平均 = " + sumhens/hens.length);
        Scanner myScanner = new Scanner(System.in);
//        声明数组
        double[] num;
//        分配数组空间
        num = new double[3];
//        数组写入
        for(int i = 0; i < num.length; i++){
            num[i] = myScanner.nextDouble();
        }
        System.out.println(Arrays.stream(num).average());
//        数组打印输出
        for(int i = 0; i < num.length; i++) {
            System.out.println("第" + (i + 1) + "个值 = " + num[i]);
        }

数组练习p162 

5.5对象方法

(二)面向对象基础

(三)面向对象中级

(四)项目

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值