前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Java基础笔记

Java基础笔记

作者头像
闲花手札
发布2021-08-24 11:46:33
7610
发布2021-08-24 11:46:33
举报
文章被收录于专栏:闲花手札

Java基础

Java语言特点

  1. 跨平台( 一次开发,到处运行)
  2. 面向对象(万物皆对象)

Java开发运行环境

JDK:Java开发工具集(开发人员需要安装)window配置JDK

JVM:java虚拟机

JRE:java运行环境(运行java程序必须安装)

注:java程序最终是运行在jvm虚拟机上的,不同的操作系统上可以安装其对应版本的jvm,这样就实现了跨平台

java程序开发的步骤

编写源代码 (后缀.java)

编译 (后缀.class)

运行

java类的结构

代码语言:javascript
复制
public 	class 类名{
    public static void main(String[] args){
        
    }
}

main方法是Java程序的入口

语法规则

输出语句

代码语言:javascript
复制
System.out.println("输出内容");		//输出完后自动换行--》System.out.print("\n");
System.out.print("输出内容");		//输出完后不自动换行

转义字符

代码语言:javascript
复制
\n		换行符
\t		大空格(Tab键)

注释

代码语言:javascript
复制
//		单行注释

/*
 *		多行注释 
 */

变量

内存中一块储存空间的表示

变量的数据类型
  1. 基本类型(8种)
    • byte 1个字节
    • char 2个字节
    • short 2个字节
    • int 4个字节
    • long 8个字节
    • float 4个字节
    • double 8个字节
    • boolean 1个字节

    自动 小——》大 强制 大——》小 大小是根据占用字节判断 byte—》short—》int—》long—》float—》double char——》int 自动 float——》int 强制 (int)12.3f

  2. 引用类型 String 数组 对象 除了八中基本类型之外的都属于引用数据类型
  • 比较相等
    • Java基本数据类型(8种)
      • 相等 ==
      • 不相等 !=
    • String
      • 相同 字符串1.equals(字符串2)
        • true
      • 不相同 !字符串1.equals(字符串2)
        • false
变量的声明和使用
  1. 先声明后赋值
    1. 声明变量 数据类型 变量名;
    2. 变量名 = 变量值;
    3. 使用
  2. 声明并赋值
    1. 声明变量 数据类型 变量名 = 变量值;
    2. 使用
变量的命名规则
  1. 字母,数字,下划线,$,但是不能以数字开头
  2. 不能与关键词重名
  3. 见名知义
  4. 多个单词组成时,第一个单词小写其余单词开头首字母大写。 如:myScore
键盘接收

初始化Scanner对象

在程序中导入Scanner类

从键盘接收数据赋值给变量

数组

声明和使用步骤
  1. 声明
  2. 分配空间
  3. 赋值
  4. 使用
  5. 注意
    • 声明同时分配空间:`数据类型 [] 数组名=new 数据类型[数组长度];
    • 数组下标从0开始 数组元素最大下标值是 length-1
    • 声明的时候赋值
      • 数据类型 [] 数组名 = new 数据类型[]{值1,值2,…}//后面的括号中不能写长度
      • 数据类型 [] 数组名 = {值1,值2,…}//不可拆分
遍历数组元素
代码语言:javascript
复制
for(int i=0;i<数组名.length;i++){
	System.out.println(数组名[下标]);
}
数组的应用

数组排序

  • 步骤
    1. Arrays类导入 import java.util.Arrays
    2. Arrays.sort(要排序的数组);

求最大值(打擂台思想)

  1. 循环数组依次与最大值比较

向数组中添加元素

  1. 找到待插入元素的下标
    • 循环数组,当满足 待插入元素大于当前数组元素的时候,终止循环,并用变量保存当前下标
  2. 给待插入元素腾位置
    • 从后往前移动元素 否则会元素覆盖,丢失 i=length-1;i>找到的下标值;i–前一个元素的值 赋值给 后一个
  3. 插入元素
    • 数组名[下标]=元素值;

运算符

赋值运算符

符号: =

把等号右边的值赋给左边

sum+=i;//sum=sum+i;

算数运算符

\ + - * /(求商) %(求余数) ++(自增) –(自减)

关系运算符

<,> ,>=,<=, == (比较两个数是否相等) !=(比较两数是否不等)

逻辑运算符

||或 &&与 !非

优先级

!>算术运算符>关系运算符>&&>|| ​ 最高小括号,最低赋值运算符

流程控制语句

流程图

表示程序的运行流程

  • ◇ (菱形)表示判断
  • 矩形 表示代码块
  • 平行四边形 输出语句
  • 圆角矩形 开始或者结束

选择结构

简单的if选择结构

代码语言:javascript
复制
if( boolean类型的值 ){
	//代码块
}

if-else 选择结构—–用于两种分支判断的情形

代码语言:javascript
复制
if(){
	//代码块1
}else{
	//代码块2
}

多重if语句 :用于区间连续情形

代码语言:javascript
复制
if(){
	//代码块1
}else if(){
	//代码块2
	}else{
		//代码块3
		}

嵌套if语句 :一个完整的 里面嵌套另一个完整的结构

代码语言:javascript
复制
if(){
	if(){
		//代码块1
	}else{
		//代码块2
	}
}else{
	if(){
		//代码块3
	}else{
		//代码块4
	}
}

switch选择结构—-用于等值判断

代码语言:javascript
复制
switch(变量){
	case 常量1:
		//代码块1
	break;
	case 常量2:
		//代码块2
	break;
	default:
		//代码块3
	break;
}

循环结构

while循环—–先判断再执行

do-while—先执行再判断

for循环—用于固定循环次数

执行顺序:同while 1.变量初始化 2条件判断 3循环体 4变量更新

三种循环比较

  • 先判断后执行:while for
  • 先执行后判断:do-while
  • for循环主要用于循环次数固定
  • 在循环条件不成立的时候,do-while至少执行一次

二重循环

代码语言:javascript
复制
for(){
	   //循环体
	 for(){
	 	//循环体
	 	}
	}

流程控制语句

  • break
    • 单层循环中: 终止循环,执行循环外的语句
    • 二重循环中:用在内层循环中,只能结束内层循环,执行外层剩下的代码
  • continue
    • 单层循环:跳过本次循环,执行下一次循环
    • 结束本层的本次循环 执行本层下一次

解决代码中的异常

  • 常见的错误信息
    • The local(局部的) variable(变量) num may not have been(可能还没有被) initialized(初始化)===>变量尚未赋值就已经使用
    • num cannot be resolved to a variable===>变量没有声明
    • java.util.InputMismatchException ===>输入类型不匹配
    • 数组下标越界 java.lang.ArrayIndexOutOfBoundsException 当访问超出了数组下标范围
      • Array 数组
      • index 下标
      • outof 超出了
      • bounds 边界
      • Exception 异常
  • 简单的异常处理
    • input.hasNextInt() 判断用户输入的内容是否是合法整数,合法为true, 否则为false
      • 要在变量赋值之前判断
  • 程序调试 程序在我们的控制下一步一步执行
    • 调试代码之前,要先分析可能出错的位置
    • 在可能出错的地方 打断点—代码执行到断点处会暂停 行号前双击
    • 以debug模式启动程序 debug as—java application
    • 单步执行,查找错误(F6) {程序运行到断点处才会启动调试模式}
    • 找到错误,修改代码
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020-09-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Java基础
    • Java语言特点
      • Java开发运行环境
        • java程序开发的步骤
          • java类的结构
            • 语法规则
              • 输出语句
              • 转义字符
              • 注释
              • 变量
              • 数组
              • 运算符
              • 流程控制语句
              • 选择结构
              • 循环结构
              • 流程控制语句
              • 解决代码中的异常
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档