首页 > 编程语言 >基础 Java

基础 Java

时间:2025-01-19 18:31:52浏览次数:1  
标签:Java int 数据类型 基础 System double sc

基础 Java

跨平台

  • 通过虚拟机 JVM 实现

  • 并不是直接运行在操作系统中, 而是运行在虚拟机中

  • 针对不同操作系统, 安装不同的虚拟机

JDK 和 JRE

  • JDK: Java 开发工具包 (包括 JVM 虚拟机, 核心类库, 开放工具)

  • JRE: Java 运行环境 (JDK 去掉部分工具, 保留运行工具)

关键字

  • 字母全部小写

  • 一般有颜色高亮

  • class 用于创建/定义一个类, 类是 Java 最基本的组成单元

标识符命名规则建议

  • 小驼峰: 用于 方法, 变量

    • 一个单词: 全部小写
    • 多个单词: 第一个单词首字母小写, 其余首字母大写
  • 大驼峰: 用于 类名

    • 一个单词: 首字母大写
    • 多个单词: 每个单词首字母大写

基本数据类型

boolean, byte, char, double, float, int, long, short, null

引用数据类型

理解为指针/引用

存储地址值

final

final double PI = 3.14;

暂时理解为 const

隐式转换

数据类型不一样时不能直接运算

byte < short < int < long < float < double

  • 取值范围小的先提升为大的, 再进行运算

  • byte short char 运算时都会先提升为 int 再运算

强制转换

double a = 12.3;
double b = 31.5;
int c = (int)(a + b);

数组

int[] ary = new int[10];

数据类型[] + 变量名 = new + 数据类型[数组大小]

字符串

String a = "Hello";
char[] ch = {'H', 'e', 'l', 'l', 'o'};
String s = new String(ch);

+ 只要有字符串参与, 就是字符串拼接, 无论字符串与什么类型运算

3.7 + "abc" => "3.7abc"
'A' + "abc" + true => "Aabctrue"

多个运算时, 从左至右进行

1 + 99 + "abc" => "100abc" 而不是 "199abc"

键盘输入

使用 类 Scanner

import java.util.Scanner;

Scanner sc = new Scanner(System.in); // sc 为变量名

// 遇到空格, 制表符, 回车就停止接收
int a = sc.nextInt();
double b = sc.nextDouble();
String c = sc.next();

// 遇到回车才停止接收
String d = sc.nextLine();

输出

System.out.println(...);

可以打 sout 自动补全

System.out.printf("%d\n", a);
System.out.printf("%f\n", b);
System.out.printf("%s\n", c);

循环语句

基本与 c++ 完全相同

for 可以 for (int a : v) {}

方法

即 函数, 基本与 c++ 完全相同

  • 重载:

    • 同一个类里面
    • 方法名相同
    • 参数不同 (个数, 类型, 顺序)
    • 返回值可以不同
    • max(a,b)max(a,b,c)
  • 传参:

    • 基本数据类型
    • 引用数据类型

标签:Java,int,数据类型,基础,System,double,sc
From: https://www.cnblogs.com/wxgmjfhy/p/18679781

相关文章

  • webWorker 开启javascript另外的线程
    javascript是一个单线程语音,因此所有执行代码放在一个线程里面因此javascriot是从上到小执行代码的,但是遇到大量切繁重的任务例如图形计算请求,轮询等需要耗时的任务虽然可以使用异步来避免造成页面渲染的阻塞,但是异步任务完成后还要对数据进行处理因此也会导致页面的卡顿,因此......
  • 【Java】Java UML 类图绘制解析:结构与工具类型详解
    前言常用UML绘图工具1、VisualParadigm2.Lucidchart3.Draw.io(现名diagrams.net)4.PlantUML(推荐)5.StarUML类与类之间的关系UML中的关系是面向对象关系。......
  • Java流程控制
    scanner对象之前学的基本语法没有实现程序与人的交互,现在可以使用scanner类来获取用户的输入(之前都是我们在输出程序,现在可以搞个程序然后输入数据得到结果)基本语法Scanners=newScanner(System.in);通过scanner类的next()和nextLine()获取输入字符串,在读取前一般需要使用hasNex......
  • java基本运算符
    在运算中:运算时定义不同的类型时,结果都自动升为混合运算类型中最高类型关系运算符:返回的结果:正确,错误,布尔值关系运算符%:模运算,取余+,-,*,/++:自增(b=a++即b=a+1,先执行a+1在赋值)(b=++a即b=a+1,a+1后在赋值)--:自减(b=a--即b=a-1,先执行a-1在赋值)(b=--a即b=a-1,a-1后在赋值)幂运算:2的三......
  • 计算机基础——计算机与计算机思维
    计算机与计算机基础计算机发展与应用计算机基本概念电子计算机是一种能自动地、高速地、精确地、进行信息处理的电子设备计算机的发展电子管计算机(1946-1959)晶体管计算机(1960-1964)集成电路计算机(1965-1969)大规模和超大规模集成电路计算机(1970至今)计算......
  • Java线程相关知识及线程池学习二
    阻塞队列定义在Java中,阻塞队列(BlockingQueue)是一种线程安全的队列。阻塞队列是Java并发包(java.util.concurrent)中的一个重要组件,常用于生产者-消费者模式中,一个线程产生数据放入队列,另外一个从队列取出数据进行消费。主要有两种情况在尝试添加元素到队列中时,如果队列已......
  • java类型转换
    由于java是强类型语言,所以在运算的时候需要用到类型转换低(byte、short、char——>int——>long——>float——>double)高运算中不同类型的数据先转化为同一类型,然后在进行运算强制转换:(类型)变量名(高——>低)/自动转换(低——>高)注意点不能对布尔值进行转换不能对象类型转换......
  • 1.MySql基础架构之SQL语句的执行
    1.MySQL数据库的整体架构(i)连接器:连接器负责与客户端建立连接,获取权限、维持和管理连接。连接命令中的mysql是客户端工具,用来建立服务端连接。在完成经典的TCP握手后,连接器就要开始认证你的身份,这个时候用的就是你输入的用户名和密码。​ 如果用户名密码认证通过,连接器会到权限......
  • 深入理解 Java 双列集合:Map 家族的探索与实践
    在Java编程的世界里,集合框架是组织和操作数据的强大工具。其中,双列集合以独特的键值对存储方式,为我们处理数据提供了别样的思路。本文将深入探讨Java双列集合的核心概念、常见实现类及其应用场景。双列集合的基本特性双列集合,区别于单列集合,它一次存储一对数据,即键(Key)和......
  • 偷偷的学Java
    序章:为何要偷偷学Java?•Java,不仅仅是一种编程语言• 偷偷学Java,快速提升你的竞争力•Java学习秘籍第一章:Java的神秘面纱•Java的起源与发展历程•Java的生态系统与应用场景•Java与其他编程语言的比较第二章:搭建你的Java秘密基地•安装Java开发工具包(JDK):不被发现......