首页 > 编程语言 >Java基础语法部分

Java基础语法部分

时间:2022-12-03 17:47:59浏览次数:36  
标签:运算符 Java int 基础 System 语法 数组 new out

第一天(12.01)

  • 语句以分号结束
  • 起名以'_','$'和字母开头
  • 使用final定义常量
  • '^'表示异或,相同为false

算术运算符'+'的使用

  • 从左到右逐个执行

  • 只要有字符串参与,就会将前后拼接

    System.out.printIn("abc"+true); //abctrue

    System.out.printIn(2+1+"abc"+2+1); //3abc21

  • 字符+字符 或 字符+数字 时,会将字符转换为ASCII码对应值再运算

输入

点击查看代码
Scanner sc = new Scanner(System.in);
int num = sc.nextInt();

基本数据类型

类型转换

  • 底层类型是二进制位数增加和删除,注意最前一位都是符号位
    隐式:1100 0100 --> 0000 0000 1100 0100
    强制: 1001 0101 1100 0100 --> 1100 0100

隐式转换

  • 取值范围小 --> 取值范围大
  • int<long<float<double
转换场景
  • 小范围与大范围运算时,小范围自动转换为大范围再进行运算,并最终返回大范围类型数据
  • byte,short,char在进行任何运算时都会先转换为int再运算
  • 在使用 +=, -= ,*= ,/= ,%= 时底层都隐藏了强制类型转换

强制类型转换

  • 取值范围小 <-- 取值范围大

短路逻辑运算符

  • && 和 ||
  • 前面条件能够判断则跳出,提高程序效率

三元运算符

  • 三元运算符的结构必须被使用

'&' 的用法('|' 同理)

  • 作为逻辑连接运算符连接两个表达式
  • 可以用在 数字和数字 字符和数字 字符和字符 之间使得其转换而成的十进制数在底层通过按位与的方式运算
  • 计算机中的数的存储方式都是补码,按位与运算结果也是补码,因此计算结果需要特别注意收尾符号位

左移和右移

a << 2 a >> 2

  • 底层逻辑也是二进制左右移,相当于乘除2en

流程控制

if

  • if后的大括号省略时,如果直接写int a = 100;会报错,该语句包含定义和赋值两句
  • 支持else if最后不加else

第二天(12.02)

  • 使用 sout+Tab 快速输出
  • System.out.print()在使用时不会换行
  • sc.nextLine()可用于键盘读入字符串

switch

  • switch中路由是byte,short,int,char,枚举,字符串
  • default位置可以随意
  • JDK12的switch简化写法
    case 1 -> System.out.printIn("number为1");
  • switch使用于离散值,if可用于连续值
  • 支持多个值匹配(注意JDK版本)
    case 1,2,3,4,5: System.out.printIn("workday");

for

  • 键入 5.fori+Tab 快速写循环(循环5次)
  • continue:结束本次循环,开始下次循环

案例:判断回文数

生成1-99之间随机数

点击查看代码
  Random r = new Random();
  int num = r.nextInt(1,100); //记得配置高版本jdk
  System.out.println(num);

数组

  • 定义
    int[] array = new int[]{1,2,3,4}; //静态
    int[] arr = new int[3]; //动态
  • 使用去arr.length获取数组长度
  • 快速遍历数组快捷 arr(数组名).fori + Tab,然后填入语句
  • 数组初始值定义规律

  • 数组以以下方式复制时,只复制引用,实质上指向同一块空间
点击查看代码
int[] arr1 = {1,2,3};
int[] arr2 = arr1;

第三天

  • psvm + Tab 快捷创造程序主入口
  • 选中代码中重复部分 + ctrl + Alt + M 自动抽取方法
  • 上述参数定义放在选取部分之外
  • System.out.println();// 只做换行不输出
  • ctrl + Alt + L 格式化代码

方法重载

  • 同一个类方法名相同
  • 参数不同(个数,类型,顺序)
  • 与返回值类型无关(返回值类型可以不同)
  • 进行随机抽取时,可将所有需要抽取的元素放入数组,随后随机生成数组的下标

注意Java中的内存空间分配

  • 分为栈和堆两部分
  • 栈用于存储程序运行过程的方法以及方法中定义的基本数据类型
  • 对用于存储程序运行过程中创建的引用类型数据
  • 栈中方法出栈后数据消失(作用域),而堆中的数据不会随着某个方法出栈而消失,只在程序全部运行完毕后释放

二维数组

  • 数组定义
    int[][] arr = new int [][]{{11,22,33},{44,55}};
    int[][] arr = new int [2][]; //允许不定义第一位数组长度
  • 允许后续使用别的数组引用对二维数组进行重新赋值
  • 内存形式

标签:运算符,Java,int,基础,System,语法,数组,new,out
From: https://www.cnblogs.com/dracays/p/16942984.html

相关文章