一.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)

最新文章

  1. localStorage使用
  2. ASP.NET MVC 4 的JS/CSS打包压缩功能-------过滤文件
  3. 清北暑假模拟day1 艳阳天
  4. [Linux] CentOS 加入开机启动
  5. Java for LeetCode 072 Edit Distance【HARD】
  6. USACO Section 3.2 香甜的黄油 Sweet Butter
  7. 重写 libev 的 EV_WIN32_HANDLE_TO_FD
  8. 如何去掉IE控件的垂直滚动条(使用QAxWidget加载IE控件)
  9. EntityFrame Work 5 性能注意事项(转自MSDN)
  10. 在 sublime text 上添加 Package Control
  11. 开源作业调度工具实现开源的Datax、Sqoop、Kettle等ETL工具的作业批量自动化调度
  12. git-分支使用方式
  13. mybatis与spring的整合(使用接口实现crud)
  14. Python调用ansible API系列(五)综合使用
  15. Python开发【第五篇】内置函数
  16. Python设计模式 - UML - 通信图(Communication Diagram)
  17. charles License
  18. QMessageBox的使用
  19. win10 php7.2 nginx 安装 imagick,适用于phpstudy
  20. UI移动设备屏幕知识

热门文章

  1. Django之forms.Form
  2. charme浏览器 jquery1.9.1min.js 报脚本错误 无jquery.min.map 文件
  3. 阿里面试官必问的12个MySQL数据库基础知识,哪些你还不知道?
  4. 201771010128王玉兰《面向对象程序设计(Java)第十四周学习总结》
  5. 从零开始搭建一个PaaS平台 - 我们要做什么
  6. 将BeyondCompare设置为TortoiseSVN的扩展比较工具
  7. MyBatis中的命名空间namespace的作用
  8. 【转】从一副扑克牌中随机抽取N张
  9. java方式实现选择排序
  10. Orcle 查询语句