一.Java源程序结构与编程规范

一个完整的Java源程序应该包含下列部分

  • package语句,至多一句,必须放在源程序第一句
  • import语句,没有或者若干句,必须放在所有类定义前
  • public classDefinition,公共类定义部分,至多只有一个,且Java源程序文件名必须与该类名一致
  • interfaceDefintion,接口定义部分,可以有0个或多个接口定义

编程规范

  • 包名,全小写,可以用点分隔开
  • 类名,首字母大写,多个单词的,每个单词首字母大写
  • 接口名,与类名相同
  • 方法名,多个单词合成,首字母小写,中间单词首字母大写
  • 变量名,全小写
  • 常量名,全大写

二.基本输入输出

输出:

System.out.println("Hello" + "World" + "!");  //默认换行
System.out.print("Hello" + "World" + "!"); //不换行

键盘输入:

Scanner input = new Scanner(System.in);
int x = input.nextInt();
System.out.println("输出结果为:"+x);

三.字面量

字面量直接表示一个值,可以是数值,也可以是一个字符,布尔值

数值型

长整型数值:

后面加L或l,区别其他整型值
5L 290l

浮点型数值:

后面加F或f,区别双精度
2.7f 324.2F
浮点型数值可以使用科学计数法
1.23E-7

双精度数值:

后面加D或d
23.2114d 21.4214D

八进制:

前面加0
0123

十六进制:

前面加0x或0X
0x3af

四.基础数据类型的封装

数据类型 对应的封装类 数据类型 对应的封装类
boolean Boolean int Integer
byte Byte long Long
char Character float Float
short Short double Double

Java是面向对象语言,基本的数据类型有时也要用其对象来处理,如在进行抽象数据类型字符串,与其他的基本数据类型之间进行转换时。

使用与基本数据类型对应的类,可以创建一个对象来保存同一个值。

float fnum1 = 12.56f;
double dnum2 = 12.5;
String str = "34.89"; Float obj1 = new Float(fnum1);
Float obj2 = new Float(dnum2);
Float obj3 = new Float(str);
Float obj4 = new Float(2.34f);

五.运算符

逻辑运算符

  • 非短路运算符

逻辑与   |
逻辑或 &
  • 短路运算符

逻辑与   ||     (左边逻辑值为假,右边不再计算)
逻辑或 && (左边逻辑值为真,右边不再计算)

对象运算符instanceof

用于测定一个对象是否属于某个指定的类或其子类的实例

boolean b = student instanceof people;

六.Java文档注释

当程序员编写完程序之后,可以通过jdk提供的javadoc命令,生成所编程序的API文档,该文档主要内容就是从文档注释中提取的。以HTML格式出现,与Java帮助文档格式一致。

格式/**      */
在命令行运行Javadoc -d. Doc.java生成注释文件

七.带标号的continue语句

continue lable1;

带标号的continue语句,使流程直接转入标号指明的循环层,类似goto语句,但是不推荐使用

八.数组

一维数组

  • 数组的声明

//datatype [] arrayName;
int [] mathScore;
  • 申请空间,定义大小

//arrayName = new datatype[numberOfArrayElement];
mathScore = new int[10];
  • 初始化

    • 静态初始化

      //datatype [] arrayName = {value1,value2,value3....};
      int [] mathScore = {1,2,3,4};
    • 动态初始化

      先声明和定义数组,然后再赋值

      //简单类型
      int [] intArray = new int[5];
      intArray[0] = 1;
      intArray[1] = 2;
      ...
      //复杂类型
      String [] stringArray = new String[3];
      stringArray[0] = new String("hello");
      stringArray[1] = new String("world");
      ...
  • 数组元素的引用

arrayName[index];
  • foreach循环

for(type variableName : array | collection){

}
//示例
int [] mathScore = {1,2,3,4};
for(int student : mathScore){
System.out.println(student);
}

二维数组

Java允许生成具有不同长度的多维数组

int [][] nArray = {{1,2,3},{4},{5,6,7,8}}
int [][] samArray = new int [3][];
samArray[0] = new int [3]; //第一行元素个数为3
samArray[1] = new int [4]; //第二行元素个数为4
samArray[2] = new int [5]; //第三行元素个数为5

九.字符串类

String类

  • String类构造方法

String()   //创建空的字符串对象
String(String value) //参数可以是引用或字符串
String(char [] value) //用字符数组内容初始化
//示例
String s2 = String("java");
String s2 = String(s1);
  • 字符串操作

charAt(int index) //获得指定位置字符
length() //求字符串长度
...

StringBuffer类

StringBuffer类表示的是可以修改的字符串

  • StringBuffer类构造方法

StringBuffer(String str)

//与String不同,不能定义StringBuffer类型的变量,如
//StringBuffer str = "This is StringBuffer";是不允许的
  • 对字符串的修改

    • 添加操作

      append()
    • 插入操作

      insert()
    • 删除

      delete(int start,int end)
      deletCharAt(int index)
    • 替换

      replace(int start,int end,String [] args)

04.Java基础语法的更多相关文章

  1. [Java 教程 04] Java基础语法

    在上一篇文章中我们已经运行了个简单的java程序,但是没有给大家讲解代码部分的内容与含义.学习,我们要做到知其然而知其所以然,所以本篇文章我们就来讲解java程序的基本语法,学完这篇文章你再回头看上篇 ...

  2. 072 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 04 综合案例-数组移位-在指定位置处插入数据方法

    072 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 04 综合案例-数组移位-在指定位置处插入数据方法 本文知识点:综合案例-数组移位-在指定位置处插入数据方法 ...

  3. 057 01 Android 零基础入门 01 Java基础语法 06 Java一维数组 04 案例:求整型数组的数组元素的元素值累加和

    057 01 Android 零基础入门 01 Java基础语法 06 Java一维数组 04 案例:求整型数组的数组元素的元素值累加和 本文知识点:求整型数组的数组元素的元素值累加和 案例:求整型数 ...

  4. 042 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 04 案例演示while循环的使用——循环输出英文字母

    042 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 04 案例演示while循环的使用--循环输出英文字母 本文知识点:案例演示while循环的使用2 ...

  5. 038 01 Android 零基础入门 01 Java基础语法 04 Java流程控制之选择结构 05 案例演示switch结构-星期的表示案例以及总结

    038 01 Android 零基础入门 01 Java基础语法 04 Java流程控制之选择结构 05 案例演示switch结构-星期的表示案例以及总结 本文知识点:案例演示switch结构并对sw ...

  6. 037 01 Android 零基础入门 01 Java基础语法 04 Java流程控制之选择结构 04 switch结构

    037 01 Android 零基础入门 01 Java基础语法 04 Java流程控制之选择结构 04 switch结构 本文知识点:Java中的switch结构 选择结构分类 选择结构只有如下2种 ...

  7. 036 01 Android 零基础入门 01 Java基础语法 04 Java流程控制之选择结构 03 嵌套if结构

    036 01 Android 零基础入门 01 Java基础语法 04 Java流程控制之选择结构 03 嵌套if结构 本文知识点:Java中的嵌套if结构 什么是嵌套if结构? 概念: 嵌套if结构 ...

  8. 035 01 Android 零基础入门 01 Java基础语法 04 Java流程控制之选择结构 02 多重if结构

    035 01 Android 零基础入门 01 Java基础语法 04 Java流程控制之选择结构 02 多重if结构 本文知识点:Java中的多重if结构 选择结构回顾 if选择结构 注意: 1.条 ...

  9. 034 01 Android 零基础入门 01 Java基础语法 04 Java流程控制之选择结构 01 流程控制概述

    034 01 Android 零基础入门 01 Java基础语法 04 Java流程控制之选择结构 01 流程控制概述 本文知识点:Java中的流程控制相关概念的认识 三大流程控制语句结构的简介 顺序 ...

随机推荐

  1. Vue零基础入门记录

    在2020年这个开局不利的年份毕业,实习工作都很难得.最近来到一家单位,为了减小开支实习生过来了的话前端后端都要写.用Vue和ElementUI做界面.以前的前端vue了解还停留在new一个Vue实例 ...

  2. VxLAN协议详解

    版权声明:本文为Heriam博主原创文章,遵循CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明. 原文链接:https://jiang-hao.com/articles/2020/n ...

  3. CSS实现漂亮的小水球效果

    先看效果图: 代码: <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> ...

  4. PHP SQL预处理

    php预处理查询 $query='insert into p1(info) values(?)'; $query2='select info from p1 where id=?'; $country ...

  5. COLA的扩展性使用和源码研究

    cola扩展点使用和设计初探 封装变化,可灵活应对程序的需求变化. 扩展点使用 步骤: 定义扩展点接口,类型可以是校验器,转换器,实体: 必须以ExtPt结尾,表示一个扩展点. 比如,我定义一个云枢的 ...

  6. 【数据结构的JavaScript版实现】data-struct-js的npm包初版作成

    [数据结构的JavaScript版实现]data-struct-js的npm包初版作成 码路工人 CoderMonkey [数据结构的JavaScript版实现] 拖了这么久,终于趁着春节假期把初版( ...

  7. [Flutter] 音频播放插件 audioplayers 的一个路径坑

    pubsepc.yaml 文件 flutter: assets: video/video-01.mp4 video/video-02.mp4 audio/bg.mp3 以上关于视频的文件的配置,都能正 ...

  8. javascript中日期的最简单格式化

    // 假设要转换的日期数据来源是date(一个timestamp) let date = Date.now() // 1574141546000 let strDate = (new Date(dat ...

  9. AtomicLong AtomicDouble AtomicInteger

    Atomic+数字类型 大多都持有一个静态的Unsafe对象,通过unsafe 对属性在类对象的offset cas直接操作物理内存实现对数据的修改 public class AtomicLong e ...

  10. 串口助手下载-带时间戳的串口助手-极简串口助手-V1.1 自动保存配置参数 能显示收发时间方便调试

    1.串口助手下载 2.带时间戳的串口助手,每次收发指令带上了时间戳,方便调试 3.极简串口助手 4.简单易用 高速稳定 5.每次修改的参数都能自动保存,免去了重复配置的工作 下载地址:http://w ...