java学习chapter1

1.规范:所有类名、接口名第一个字母大写, 每个单词的首字母大写, 驼峰式
方法名和变量名首字母小写,后面每个单词首字母大写

2.关键字:所有都小写

3.数据类型:只有字面值内存无法得到重复利用。java中所有字符都用单引号,字符串用双引号。
定义变量: 类型 变量名; 赋值: 变量名 = 值; 变量就是内存中的一块空间,这块空间有类型、名字和值
声明变量 i1, i2, i3 = 100; i1,i2没有赋值,只有i3 = 100

4.// public表示公开的
// class定义一个类

public class HelloWorld {
//类体
/*
程序的入口,是一个方法,main,固定写法,其中args是可变的
*/
//public表示公开的
//static表示静态的
//void是返回值类型,main是方法的名字
//string[] args 方法的参数列表
public static void main(String[] args) {
//方法体
//方法体由java语句构成,以分号结束
System.out.println(“Hello World”);
}

//java类体中不能直接编写java语句

}

//单行注释

/*

  • 多行注释
    */

/**

  • 多行注释,该注释可以被javadoc工具解析生成帮助文档
    */
    5.//一个.java源文件可以定义多个class,并且一个class会生成一个.class文件
    // 一个.java源文件可以没有public的class
    // public的class必须与文件名保持一致
    // 如果要定义public的class,则只能有一个

6.关于变量的作用域:出了大括号就不认识了
在类体中不能写java语句,但是可以声明变量。java变量分为两种:局部变量和成员变量,
成员变量可以声明但不赋值,有默认值(在类体中方法之外声明的变量)

7.java数据类型分为两种:基本数据类型和引用数据类型,基本数据类型分为8种,引用数据类型有3种
基本数据类型:
(1)整数型: byte(1个字节), short(2个字节), int(4个字节), long(8个字节)
(2)浮点型: float(4个字节), double(8个字节)
(3)字符型: char(2个字节)
(4)布尔类型: boolean (1个字节)

8.字符编码:ASCII,GB, unicode(UTF-8, UTF-16, UTF-32)

9.关于转义字符:println代表打印并换行,print只打印不换行,\表示转义,\u表示unicode编码

10.整数型:三种表示方式,十进制,八进制(以0开始),十六进制(以0x开始),123L表示long类型的字面值123
将long类型转换成int类型不能自动类型转换,需要强制类型转换符 int l1 = (int)l1;
byte b1 = 10; //编译通过
byte b2 = 127;//编译通过
byte b3 = 128;//编译失败
字面值默认是int类型,记忆一个规则:如果一个整数没有超过byte(或short、char)的取值范围,可以直接将这个整数赋给byte(或short、char)类型

11.浮点类型:默认double类型,float(4个字节),double(8个字节)

12.布尔类型: true/false,没有1和0,主要用在逻辑运算和条件控制语句中,boolean b1 = true;

13.在Java中基本类型可以互相转换,boolean类型比较特殊不可以转换为其他类型。
转换分为默认转换和强制转换。
(1)8种基本数据类型除boolean类型之外都可以相互转化
(2)小容量向大容量转换叫做自动类型转换:
byte < short < int < long < float < double
char <
(3)byte, short, char在做混合运算的时候统一转换为int类型
byte b1 = 10; short s1 = 20; int i1 = b1 + s1; //可以通过
byte b1 = 10; short s1 = 20; byte i1 = b1 + s1; //不能通过,虽然b1+s1=30,但是只在运行阶段能通过,编译阶段报错
(4) 大容量向小容量转换是强制类型转换,需要加强制转换符,编译虽然通过,运行可能损失精度,谨慎使用
(5)如果整数没有超出byte, short, char的取值范围,可以直接将这个整数赋值给byte, short, char
(6)在多种类型混合运算过程中,首先将所有数据转换成容量最大的那种,再运算
byte h = (byte)(int)g/3; // 错误,运算符优先级,优先结合g
byte h = (byte)(int)(g/3); //正确

14.算术运算符: +,-,*,/,++,–,%
int m = 10; int e = m ++; //e=10,m=11
int m = 10; int e = ++ m; //e=11,m=11

int z = 10; System.out.println(z++);//10 System.out.println(z);//11
int z = 10; System.out.println(++z);//11 System.out.println(z);//11

15.关系运算符: >, <, >=, <=, ==, !=。结果一定是布尔类型

16.布尔运算符:&(逻辑与), |(逻辑或), !(逻辑非), ^(逻辑异或), &&(短路与), ||(短路或)
布尔运算符的两边算子必须是布尔类型,整个表达式的结果也是一个布尔类型

关于短路与:int a = 10; int b =10; a < b & a++ >= b; // a=11
int a = 10; int b =10; a < b && a++ >= b; // a=10 (第一个算子是false,发生短路与)

第一个算子为true,发生短路或

  1. 赋值运算符
    =(基本赋值运算符),+=, -=, *=, /=, %=(扩展赋值运算符)
    byte i =10; i = i + 10; //编译无法通过
    byte i =10; i += 10; //可以通过,扩展赋值运算符不改变运算结果类型

  2. 字符串连接运算符, +可以做加法运算,也可以字符串连接
    +两边只要都是数字类型,一定是加法运算,+两边任意一端只要是字符串类型, 则一定是字符串连接

19.条件运算符(三目运算符)
boolean表达式?表达式1:表达式2

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值