Java学习笔记_180625_基础语法
1.基本数据类型
基本数据类型包括:byte,short,int,long,char,float,double,boolean八种,各类型所占空间与初始值如下表所示
type | lenth(Byte) | 初始值 |
byte | 1 | (byte)0 |
short | 2 | (short) 0 |
int | 4 | 0 |
long | 8 | 0L |
char | 2 | ‘\u0000’ |
float | 4 | 0.0f |
double | 8 | 0.0 |
boolen | 4或1 | false |
boolean的长度没有明确定论,组成数组时boolean占1Byte,单独定义时占4个Byte
2.类型转换
2.1自动转换
-容量小的类型可以自动转换为容量大的类型
-byte,short,char之间不会自动转换,需要先转化成int类型
-基本类型和字符串进行“+”运算时会将基本类型转换为字符串类型
2.2强制转换
-强制转换可以将容量大的类型转换为容量小的类型,但可能产生精度降低或溢出
-字符串不能直接转换为基本类型,但通过基础类型对应的包装类可以实现把字符串转换成基本类
String a="43"; int i = Integer.parseInt(a); //语句可通过编译,i=43
-boolen类型不可以转换成其他的数据类型,其他数据类型也无法转换为boolean
3.运算符
运算符主要有一下几类:
算术运算符、赋值运算符、比较运算符、逻辑运算符、位运算符、三目运算符
-算术运算符:+、-、*、/、%、++、--
-比较运算符:==、!=、<、>、<=、>=、instanceof,运算符结果都是boolean型,
-逻辑运算符:&、|、!、&&、||、^
-位运算符:左移<<、右移>>、无符号右移>>>、按位与&、按位或|、按位异或^、按位取反~
4.流程控制
4.1顺序结构
程序自上而下的执行,没有判断和跳转
4.2分支结构
根据条件选择性执行代码:if-else和switch
4.2.1 if-else
4.2.2 switch
-switch(表达式)中表达式的类型必须是:byte、short、char、int、枚举、String中的一个
-default为可选项,且不必置于最后。
switch语句的穿透性,示例代码,输出2014年某月某日是2014年的第几天:
import java.util.Scanner; public class Ch02Test12 { public static void main(String[] args) { // TODO Auto-generated method stub Scanner scanner=new Scanner(System.in); System.out.println("输入月份:"); int month=scanner.nextInt(); System.out.println("输入天:"); int day=scanner.nextInt(); int result = 0; switch (month) { case 12: result+=30; case 11: result+=31; case 10: result+=30; case 9: result+=31; case 8: result+=31; case 7: result+=30; case 6: result+=31; case 5: result+=30; case 4: result+=31; case 3: result+=28; case 2: result+=31; case 1: result+=0; break; default: System.out.println("请输入1-12的整数!"); break; } result +=day; System.out.println("今天是2014年的第"+result+"天"); scanner.close(); } }
4.3循环结构
根据循环条件重复性执行某段代码,while、do···while、for、foreach